我有一个Web服务,在我的类中工作时需要一个额外的属性,但我不希望在客户端上看到这个属性(在WSDL中没有序列化)。我试过了[XMLIgnore]
,但它没有用。我还在我的班级上添加了[Serializable]
,在这种情况下,该属性是以不同的名称_x003C_MyPublicField_x003E_k__BackingField1
序列化的。有没有办法在不编写自己的序列化程序的情况下执行此操作?
提前致谢。
P.S。我也试过这个Omit Properties from WebControl Serialization,但没有运气。
答案 0 :(得分:1)
您可以使用[NonSerialized]
属性来防止类属性被序列化。请参阅:https://msdn.microsoft.com/en-us/library/system.nonserializedattribute(v=vs.110).aspx
[Serializable]
public class MyClass
{
public int MySerializedProperty { get; set; }
[NonSerialized]
public string MyNonSerializedProperty { get; set; }
}
答案 1 :(得分:0)
您是否尝试删除[DataMember]属性?