2009-07-02 82 views

回答

3

這樣做的方法是將您的註冊封裝到可從XML註冊的Autofac模塊中。 (模塊描述如下:http://code.google.com/p/autofac/wiki/StructuringWithModules

你的模塊看起來是這樣的:

public class MyModule : Module 
{ 
    protected override void Load(ContainerBuilder builder) 
    { 
    builder.Register(c => MyFactory.GetMyObject()).As<IMyObject>(); 
    } 
} 

和XML進行註冊:

<module type="MyModule" /> 
0

Autofac最初是爲從代碼配置,甚至是自動佈線而構建的。

也許你正在尋找的是類似Spring.NETCastle。這兩個框架最初是爲了從XML配置,甚至是自動配置而構建的。

0

從代碼處理註冊似乎對使用web.config有一些優點,因爲通過這種方式處理複雜的依賴關係似乎更容易。

當我看到下面的例子時,唯一擔心的是所有註冊都是在Global.asax中完成的。不過,通過向單獨的程序集分發註冊,這很容易解決。