Проблема сериализации XML и DefaultValue («») в C #

свойство моего класса имеет значение по умолчанию, которое будет сериализовано.

public class DeclaredValue
{
    [XmlElement(ElementName = "Amount", DataType = "double", IsNullable = false), DefaultValue(999)]
    public double Amount { get; set; }

    [XmlElement(ElementName = "Reference2", DataType = "string", IsNullable = false), DefaultValue("")]
    public string Reference2 { get; set; }
}

поэтому мы создаем экземпляр класса DeclaredValue и укажите значение для свойства Reference2 и ничего не назначайте для Amount. поэтому, когда мы сериализуем класс DeclaredValue, в моем xml не найдено тега для суммы. Я упоминаю значение по умолчанию для суммы «999», тогда почему оно не работает при сериализации. я хочу, чтобы, если ничего не назначать для суммы, тогда в моем xml должен быть тег amoun со значением по умолчанию.

для этого мне нужно украсить свойство amount, которое всегда идет со значением по умолчанию в xml после сериализации, если Пользователь ничего не назначает этому свойству.

Пожалуйста, посоветуйте мне, что мне нужно изменить в коде, чтобы получить желаемый результат.

10
задан abatishchev 4 May 2011 в 10:46
поделиться