首页 > 解决方案 > 使用来自外部程序集的类的 WCF 数据协定

问题描述

using System.IO;
using System.Runtime.Serialization;
using System.Xml;
using MR.Storage.CommonClasses;

namespace Storage.Contract
{

[DataContract]
public class SaveMyData
{

    [DataMember]
    public MR.Storage.CommonClasses.MyData MyData{ get; set; }
}

以上是我的 wcf 服务的数据合同类。MyData 是使用 [DataContract] 和 [DataMember] 属性修饰的外部程序集中的 poco 类。当我在解决方案中添加对它的服务引用时,我得到“元数据包含无法解析的引用”。我还尝试在 wcf 测试客户端中添加它,它会引发错误 ...\Test Client Projects\14.0\729f94f0-f564-4439-90f9-1c1553821666\Client.cs(42,26) : error CS0234: The type or namespace name命名空间“MR.Storage.CommonClasses”中不存在“MyData”(您是否缺少程序集引用?)我打开了这个文件,唯一的 using 语句是 using System.Runtime.Serialization;我在做什么不可能吗?我看到了一些关于使用代理的其他建议,

标签: c#wcfdatacontract

解决方案


您是否编辑了 WCF 服务引用属性?您可以通过这种方式暗示外部程序集。老实说,我发现这种方法很麻烦(版本地狱问题),但是 YMMV。

Wcf 服务属性


推荐阅读