【问题标题】:Injecting Services In Deserialized Data Contract Proxies在反序列化数据合约代理中注入服务
【发布时间】:2012-12-04 00:12:40
【问题描述】:

我在一个项目中使用 Autofac 和 WCF 集成。我正在尝试找出一种延迟初始化数据协定代理集合属性的方法,以避免通过网络传输整个对象图。

我目前的计划是在每个反序列化数据合约中注入 WCF 服务,以便他们调用该服务,获取集合属性数据并对其进行初始化。

我的问题是:有没有办法告诉 Autofac 在客户端反序列化的每个数据合约代理中注入服务?就像在DataContractSerializer 上进行一些调整一样。

(请不要使用服务定位器...)

谢谢!

【问题讨论】:

    标签: wcf autofac


    【解决方案1】:

    不幸的是,Autofac 没有像这样“开箱即用”的东西。 Autofac 的 MVC 集成中有类似的东西,但那是因为 MVC 有一个更具体的集成点来处理这类事情 (IActionInvoker)。

    您也许可以编写一个自定义的客户端行为,拦截客户端上的某些已知类型(如集合)并在延迟初始化的集合中进行交换。 There's a similar question here asking about how to swap the DataContractSerializer out at runtime.你可以使用这样的机制。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多