依赖注入(二)Autofac简单使用
2024-09-30 16:26:46
Autofac简单使用
源码下载传上源码,终于学会传文件了。
首先 还是那句话:“不要信我,否则你死得很惨!”。
C#常见的依赖注入容器
IoC in .NET part2: StructureMap
IoC in .NET part 3: Ninject 2 beta
IoC in .NET part 5: Using CastleWindsor container
IoC Containers in .NET part 6: Unity Container
这里介绍Autofac 据说是速度最快的。我不会考证。就道听途说吧。
Autofac比较灵活,暂时只介绍简单的用法。这种用法还满足不了在生产中使用,下一篇讲如何用在生产中。
不使用Factory类 新建Manage类
public class Manage
{
private readonly IPeople _people;
//增加了构造函数,参数是IPeople对象
public Manage(IPeople people)
{
_people = people;
}
public void Say()
{
_people.Say();
}
public void Sex()
{
_people.Sex();
}
}
在Main方法中使用
class Program
{
static void Main(string[] args)
{
var builder = new ContainerBuilder();//创建容器
//builder.RegisterType<Manage>();//注册
builder.Register(x => new Manage(x.Resolve<IPeople>()));//注册
//builder.RegisterType<ChineseMan>().AsImplementedInterfaces();
builder.RegisterModule(new ConfigurationSettingsReader("autofac"));//使用config中的配置注册
using (var container = builder.Build())
{
var manager = container.Resolve<Manage>();
manager.Say();
manager.Sex();
}
}
注册有很多种方式。最近有点累,没去深究如何使用,代码也是仿的其他blog。下篇介绍的详细一点。
最新文章
- Android发送短信核心代码
- Divide and conquer:Showstopper(POJ 3484)
- 洛谷 P1012 拼数 Label:续命模拟QAQ
- Xamarin Android提示找不到资源属性定义
- SDUST 作业10 Problem D 魔方阵
- zepto源码学习-05 ajax
- Docker镜像压缩
- 绝世emacs配置for Ubuntu
- ASP.NET 页面双向静态化
- flex 访问webservice方法及跨域问题解决
- 应用程序调用dll动态库,参数有vector时崩溃的问题
- 《OpenCV3编程入门》学习笔记
- Python开发系列
- 使用maven搭建springMVC开发环境
- 【python3】urllib.error.URLError: <;urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777)>;
- C#将集合和Json格式互相转换的几种方式
- VC++ 6.0 C8051F340 USB 通信 CAN 数据解析
- Razor:从aspx到cshtml常见错误及正确书写方法
- Educational Codeforces Round 13 B. The Same Calendar 水题
- 3-java_string学习笔记: