我是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注册一个实例,然后将其用作单例。
RegisterType将创建和生存期留给容器。默认情况下通常是按请求创建。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句