c# Autofac依赖注入

public class Container
{
/// <summary>
/// IOC容器
/// </summary>
public static IContainer container = null;
public static T Resolve<T>()
{
try
{
if (container == null)
{
Initialise();
}
}
catch (Exception ex)
{
throw new Exception("IOC实例化出错!" + ex.Message);
}
return container.Resolve<T>();
}
public static void Initialise()
{
var builder = new ContainerBuilder();//InstancePerLifetimeScope
//builder.RegisterType< typeof(T).As<IT>().InstancePerLifetimeScope();
builder.RegisterType<LoginDAl>().As<ILoginDAL>().InstancePerLifetimeScope();
container = builder.Build();
}
}

调用的时候

private  ILoginDAL dal =Container.Resolve<ILoginDAL>();

这样调用也可以构造函数调用

posted @ 2018-05-04 09:19  行走在0和1之间  阅读(1670)  评论(0编辑  收藏  举报