У меня есть следующий c# класс, использующий
using System.Runtime.Serialization;
[DataContract] public class ClassA
{
[DataMember] public string _id;
[DataMember] public string author;
[DataMember] public string updateTime;
}
Затем я передаю этот объект в следующий сериализатор:
public string Serialize<T>(ref T obj)
{
// Creates a serializer object
DataContractJsonSerializer js = new DataContractJsonSerializer(obj.GetType());
// Creates a stream whose backing store is memory.
MemoryStream ms = new MemoryStream();
js.WriteObject(ms, obj);
ms.Position = 0; // reset position
StreamReader sr = new StreamReader(ms);
return sr.ReadToEnd(); // Returns the JSON String
}
Мой вопрос такой, какой я есть Не всегда хочется сериализовать поле _id
. Был ли способ, которым я мог бы указать указанное поле c и игнорировать его во время выполнения? Я думал об удалении строки вручную, а также о наследовании, но игнорирование указанного поля c во время выполнения было бы наиболее идеальным.