builder.RegisterModule(new ConfigurationSettingsReader());
需要注册上面一句才能读到.config里的节点,xml配置方式如下
<configSections> <section name="autofac" type="Autofac.Configuration.SectionHandler, Autofac.Configuration"/> </configSections> <autofac>
<modules>
<module type="MvcApp.Models.TestModel, MvcApp">
<properties>
<property name="Mode" value="1" />
</properties>
</module>
</modules>
</autofac>
Module的demo 代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Autofac;
using MvcApp.BLL;
using MvcApp.Interface; namespace MvcApp.Models
{
public class TestModel : Module
{
public string Mode
{
set;
get; }
protected override void Load(ContainerBuilder builder)
{
if (Mode == "")
{
builder.RegisterType<Test1>().As<ITest>();
}
else
{
builder.RegisterType<Test2>().As<ITest>();
}
}
}
}
-------------------------------