微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – WCF Silverlight 4:如何通过Web.config配置已知类型?

我想知道当我们使用Silverlight 4客户端时,是否可以按照 this answer中描述的方式配置已知类型?

只有似乎有用的东西是使用KNownType属性,我们希望避免使用该解决方案,因为这些类位于不同的程序集中,我们不希望它们之间存在依赖关系.

以下是配置示例:

<?xml version="1.0"?>
<configuration>
  <!-- *sniP* -->
  <system.runtime.serialization>
    <dataContractSerializer>
      <declaredTypes>
        <add type="Foo.Dto.FooDto,Foo.Dto,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null,processorArchitecture=MSIL">
          <kNownType type="Foo.Dto.BarDto,processorArchitecture=MSIL" />
          <kNownType type="Foo.Dto.BizDto,processorArchitecture=MSIL" />
        </add>
      </declaredTypes>
    </dataContractSerializer>
  </system.runtime.serialization>
  <!-- *sniP* -->
</configuration>

解决方法

查看关于该主题MSDN docs – 基本上,这就是您所需要的:

<configuration>
   <system.runtime.serialization>
       <dataContractSerializer>
           <declaredTypes>
             <add type="MyCompany.Library.Shape,MyAssembly,Version=2.0.0.0,PublicKeyToken=XXXXXX,processorArchitecture=MSIL">
                 <kNownType type="MyCompany.Library.Circle,processorArchitecture=MSIL"/>
             </add>
           </declaredTypes>
       </dataContractSerializer>
   </system.runtime.serialization>
</configuration>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐