我找不到用于[DataContract]和[DataMember]元素的名称空间。根据我的发现,似乎添加以下内容就足够了,但在我的情况下还不够。

using System;
using System.Runtime.Serialization;

下面是我的代码片段:

using System;
using System.Runtime.Serialization;

namespace MyNamespace {

    [DataContract]
    public class Tuple<T1, T2> {
            // A custom implementation of a Tuple
            //...
            //...
        }
}

我得到的错误是:

无法找到类型或命名空间名称“DataContract”(您是否缺少一个using指令或程序集引用?)

我是否没有使用正确的名称空间?


当前回答

首先,我将引用添加到我的模型中,然后在代码中使用它们。你应该添加两个参考资料:

使用System.ServiceModel; 使用System.Runtime.Serialization;

然后,这个问题在我的程序中得到了解决。我希望这个答案能帮助到你。谢谢。

其他回答

首先,我将引用添加到我的模型中,然后在代码中使用它们。你应该添加两个参考资料:

使用System.ServiceModel; 使用System.Runtime.Serialization;

然后,这个问题在我的程序中得到了解决。我希望这个答案能帮助到你。谢谢。

DataContractAttribute类在System.Runtime.Serialization命名空间中。

您应该添加一个对System.Runtime.Serialization.dll的引用。不过默认情况下不会引用该程序集。要将引用添加到项目中,您必须转到解决方案资源管理器中的引用->添加引用并手动添加程序集引用。

在visual studio for .Net 4.0框架中,

尝试向项目添加新的引用。 在. net选项卡上,搜索System.Runtime.Serialization。 现在,你可以使用System.Runtime.Serialization。错误将不会显示出来。

http://msdn.microsoft.com/en-us/library/system.runtime.serialization.datacontractattribute.aspx

DataContractAttribute在System.Runtime.Serialization命名空间中,您应该引用System.Runtime.Serialization.dll。它只在.Net >= 3中可用

我通过在参考中添加C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Runtime.Serialization.dll解决了这个问题