Unity配置部分和WCF服务

时间:2012-02-10 16:01:20

标签: wpf wcf unity-container app-config wcf-client

我在Codeplex上使用Unity.WCF 我有一个使用Unity的WCF服务来注册类型。

我想在我的客户端WPF Application App.Config中输入正确的信息,以便在我的WCF服务中注册这些类型,以便我可以在我的应用程序中解决它们。

有人可以帮我理解我的语法吗?

假设我的接口是IBPService我实现它的类是BPService,我的程序集名称是BPService,我的命名空间也是BPService。

我试过

<unity>
    <containers>
      <container>
        <register type="BPService.IBPService, BPService">
          <constructor>
            <param name="prefix">
              <value value="Injected by default unity section and container"/>
            </param>
          </constructor>
        </register>
      </container>
    </containers>
  </unity>

但是,当我点击说区域的代码时.Configure(容器)我得到... “给定的程序集名称或代码库无效。(HRESULT异常:0x80131047)”

感谢您的帮助 大卫

1 个答案:

答案 0 :(得分:0)

您正在尝试注册接口。这是不可能做到的。无法实例化接口。 所需要的是指定从接口到实现接口的类的映射。 您的注册表项应如下所示:

<register name="<Name>"
          type="<Namespace>.IImpl, <Assembly>"
          mapTo="<Namespace>.Impl, <Assembly>">
  <constructor>
    <param name="paramName" type="System.String" value="<ParamValue>" />
  </constructor>
</register>