如何在xml序列化中包含不可浏览的字段

时间:2014-06-26 13:32:55

标签: c# xml xml-serialization

当我序列化自定义对象列表时。结果中省略了不可浏览的字段。

它是C#4.5中的属性的例子

[DisplayName("G.Amt"), Browsable(false)]
public decimal GAmt { get{ return qty * rate; } } }

我想在xml输出中包含此属性。请建议使用哪个属性。

编辑

我意识到可浏览(false)不会导致在xml输出中省略此属性。实际上readonly属性在xml序列化中省略。

Force XML serialization to serialize readonly property 这个问题描述了实际问题及其解决方案。似乎这个问题是重复的。但在上述问题中提供的解决方案只是一个技巧。在这里,我要求任何可以解决此问题的属性。

但是在上面的问题中@Marc Gravell回答使用[DataMember]属性。 但是当我使用它时,会产生错误

An unhandled exception of type 'System.InvalidOperationException' occurred in System.Xml.dll

Additional information: Cannot deserialize type 'BusinessObject.SaleProductDetailBusinessObject' because it contains property 'GAmt' which has no public setter.

请提供任何属性来解决此问题。

0 个答案:

没有答案