क्षमा करें, मैंने एक और उत्तर लिखने का फैसला किया क्योंकि अन्य उत्तरों में से कोई भी कॉपी-पेस्ट करने योग्य नहीं है।
यदि आप कुछ विशेषताओं के साथ गुणों को सजाने के लिए नहीं चाहते हैं, या यदि आपके पास कक्षा तक कोई पहुंच नहीं है, या यदि आप तय करना चाहते हैं कि रनटाइम के दौरान क्या करना है, आदि आदि तो यहां आप इसे न्यूटनसॉफ्ट में कैसे करते हैं।
//short helper class to ignore some properties from serialization
public class IgnorePropertiesResolver : DefaultContractResolver
{
private IEnumerable<string> _propsToIgnore;
public IgnorePropertiesResolver(IEnumerable<string> propNamesToIgnore)
{
_propsToIgnore = propNamesToIgnore;
}
protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization)
{
JsonProperty property = base.CreateProperty(member, memberSerialization);
property.ShouldSerialize = (x) => { return !_propsToIgnore.Contains(property.PropertyName); };
return property;
}
}
प्रयोग
JsonConvert.SerializeObject(YourObject, new JsonSerializerSettings()
{ ContractResolver = new IgnorePropertiesResolver(new[] { "Prop1", "Prop2" }) };);
अगर किसी को कुछ भी जोड़ना हो तो मैंने यहाँ कोड प्रकाशित किया है
https://github.com/jitbit/JsonIgnoreProps
महत्वपूर्ण अद्यतन:ContractResolver
यदि आप इस उत्तर का उपयोग करने का निर्णय लेते हैं, तो सुनिश्चित करें कि आप ऑब्जेक्ट को कैश कर दें, अन्यथा प्रदर्शन को नुकसान हो सकता है।