using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Autofac;
//using Microsoft.Extensions.Configuration;
using Autofac.Configuration;
using Microsoft.Extensions.Configuration;
namespace ConsoleApplication8
{
class Program
{
private static IContainer Container { get; set; }
static void Main(string[] args)
{
var builder = new ContainerBuilder(); //
// Register individual components
//builder.RegisterType<ApplyRouteProcessor>().As<IProcessor>();
//builder.RegisterModule(new )
var config = new ConfigurationBuilder();
config.AddXmlFile("test.xml");
// Register the ConfigurationModule with Autofac.
var module = new ConfigurationModule(config.Build());
//var builder = new ContainerBuilder();
builder.RegisterModule(module);
Container = builder.Build();
// Container.Resolve<IProcessor>();
WriteData();
Console.ReadKey();
}
public static void WriteData()
{
using (var scope = Container.BeginLifetimeScope())
{
var writer = scope.Resolve<IProcessor>();
writer.Processor();
}
}
}
}
test.xml
<?xml version="1.0" encoding="utf-8" ?>
<autofac defaultAssembly="ConsoleApplication8">
<components name="0">
<type>ConsoleApplication8.ApplyRouteProcessor</type>
<services name="0" type="ConsoleApplication8.IProcessor" />
<injectProperties>true</injectProperties>
</components>
</autofac>
本文介绍了一个使用 Autofac 进行依赖注入的示例,通过 XML 配置文件注册组件和服务。示例展示了如何定义组件和服务的关系,并在运行时解析这些组件。
75

被折叠的 条评论
为什么被折叠?



