Vì ContainerBuilder.Update không còn được dùng nữa, nên đề xuất mới là sử dụng phạm vi toàn thời gian con.
Thêm đăng ký vào phạm vi lâu dài
Autofac cho phép bạn thêm đăng ký "nhanh chóng" khi bạn tạo phạm vi trọn đời. Điều này có thể giúp bạn khi bạn cần thực hiện một loại ghi đè đăng ký giới hạn “mối hàn tại chỗ” hoặc nếu bạn thường chỉ cần một số thứ bổ sung trong phạm vi mà bạn không muốn đăng ký toàn cầu. Bạn thực hiện việc này bằng cách chuyển một lambda tới BeginLifetimeScope () lấy ContainerBuilder và thêm các đăng ký.
using(var scope = container.BeginLifetimeScope(
builder =>
{
builder.RegisterType<Override>().As<IService>();
builder.RegisterModule<MyModule>();
}))
{
// The additional registrations will be available
// only in this lifetime scope.
}
Làm việc với Phạm vi trọn đời