Пространство имен для [DataContract]
Я не могу найти пространство имен для [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 или ссылка на сборку?)
Я не использую правильные пространства имен?
5 ответов:
DataContractAttributeкласса вSystem.Runtime.Serializationпространство имен.вы должны добавить ссылку
System.Runtime.Serialization.dll. Однако эта сборка не упоминается по умолчанию. Чтобы добавить ссылку на проект, необходимо перейти в раздел ссылки - > добавить ссылку в обозревателе решений и добавить ссылку на сборку вручную.
http://msdn.microsoft.com/en-us/library/system.runtime.serialization.datacontractattribute.aspx
DataContractAttribute находится в системе.Во время выполнения.Пространство имен сериализации и вы должны ссылаться на систему.Во время выполнения.Сериализация.файл DLL. Он доступен только в .Net >= 3
[DataContract] и [DataMember] атрибут находятся в системе.ServiceModel пространство имен, которое находится в системе.Средство servicemodel.файл DLL.
в visual studio для .Net 4.0 framework,
- пытаемся добавить новую ссылку на проект.
- На Вкладке .Net, Поиск
System.Runtime.Serialization.- теперь вы можете использовать
using System.Runtime.Serialization. И ошибка не будет показана.
сначала я добавляю ссылки на мою модель, а затем использую их в своем коде. Есть две ссылки, которые вы должны добавить:
использование системы.ServiceModel;
использование системы.Во время выполнения.Сериализация;затем эта проблема была решена в мою программу. Я надеюсь, что этот ответ может помочь вам. Спасибо.
Comments