Будут ли работать RegularExpressionAttribute и другие валидаторы на свойствах Automatic?
Я использую xsd2code для генерации классов из схемы. как я подозреваю, что авто свойства могут проверять значения или нет?
потому что если я включу AutomaticProperties
в xsd2code вот что я получаю для члена с ограничением Regex.
[System.Xml.Serialization.XmlAttributeAttribute(DataType="token", AttributeName="color")]
[System.ComponentModel.DataAnnotations.RegularExpressionAttribute("#[\\dA-F]{6}([\\dA-F][\\dA-F])?")]
public string Color { get; set; }
И когда AutomaticProperties
выключен
[System.Xml.Serialization.XmlAttributeAttribute(DataType="token", AttributeName="color")]
[System.ComponentModel.DataAnnotations.RegularExpressionAttribute("#[\\dA-F]{6}([\\dA-F][\\dA-F])?")]
public string Color
{
get
{
return this._color;
}
set
{
System.ComponentModel.DataAnnotations.ValidationContext validatorPropContext = new System.ComponentModel.DataAnnotations.ValidationContext(this, null, null);
validatorPropContext.MemberName = "Color";
Validator.ValidateProperty(value, validatorPropContext);
this._color = value;
}
}
Кажется, они не эквивалентны. так что я думаю, что это ошибка в xsd2code или, может быть, я что-то неправильно понимаю. Какова цель второго сгенерированного кода?
я думал RegularExpressionAttribute
также будет проверять автоматические свойства тоже.