【问题标题】:Unity Configuration Section and WCF ServicesUnity 配置部分和 WCF 服务
【发布时间】:2012-03-03 02:18:15
【问题描述】:

我正在使用 Unity.WCF 关闭 Codeplex 我有一个使用 Unity 注册类型的 WCF 服务。

我想在我的客户端 WPF 应用程序 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>

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

感谢您的帮助 大卫

【问题讨论】:

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


    【解决方案1】:

    您正在尝试注册一个接口。这是无法做到的。无法实例化接口。 所需的是指定从接口到实现接口的类的映射。 您的注册条目应如下所示:

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

    【讨论】:

    • 试过这个....没有区别。新的配置部分如下
    • 请记住,这是我的类型所在的 WCF 服务,并在统一容器中注册。所以没有要解决的大会。这就是我问这个问题的原因。我想有人已经这样做了?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-28
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-26
    相关资源
    最近更新 更多