0

我知道如何通过覆盖在引导程序中注册程序集-> protected override void ConfigureContainer()

但我想在配置文件中注册它

我将统一部分添加到 app.confg

  <register type="namespace.Iinterface, assembly, Version=1.0.0.0, Culture=neutral"
            mapTo="namespace.class,assembly">
    <lifetime type="singleton" />
    <constructor>
      <param name="file" value="xml"/>
    </constructor>
  </register>

</container>

这门课没有注册我缺少的东西?

4

1 回答 1

0

我不确定我理解您所说的“注册程序集”是什么意思,因为这不是 Unity 库、文档或代码库中任何地方使用的术语。我猜你只是想加载你的配置。

假设您在正确的配置文件中(应用程序的 app.config/web.config,.dll 没有配置文件),那么您需要:

  1. 在您的项目中引用 Microsoft.Practices.Unity.Configuration.dll。
  2. 将“使用 Microsoft.Practices.Unity.Configuration”添加到包含容器初始化代码的源文件的顶部。
  3. 称呼:

    容器.LoadConfiguration();

这将从默认配置文件中默认部分(名为 unity)的默认(未命名)容器元素加载您的配置。如果您想改变这些默认设置,可以使用多种自定义选项。

Container.LoadConfiguration 是一个扩展方法,所以如果你省略 using 语句(上面的第 2 步),调用将无法编译。

于 2011-06-14T00:54:52.277 回答