[英]what the difference between RegisterInstance and RegisterType in DI Autofac
我是 Autofac 的新手,我试图了解 web api 2(.Net 框架)中 RegisterInstance 和 RegisterType 之间的区别。 在他的文档中有一个简单的例子
var builder = new ContainerBuilder();
// Register individual components
builder.RegisterInstance(new TaskRepository())
.As<ITaskRepository>();
builder.RegisterType<TaskController>();
builder.Register(c => new LogManager(DateTime.Now))
.As<ILogger>();
// Scan an assembly for components
builder.RegisterAssemblyTypes(myAssembly)
.Where(t => t.Name.EndsWith("Repository"))
.AsImplementedInterfaces();
var container = builder.Build();
有人可以解释一下吗?
RegisterInstance 注册一个实例,然后将其用作 singleton。
RegisterType 将创建和生命周期留给容器。 默认值通常是按请求创建。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.