是否可以通过扩展Web引用中的类来替换丢失的属性。
例如,以前一个包含名为“ Amount”的属性的类是以下定义的同一项目的一部分:
public class Test
{
[Required]
[Display(Name = "Amount", Description = "Amount")]
[DisplayFormat(DataFormatString = "{0:F2}", ApplyFormatInEditMode = true)]
[Range(1000, int.MaxValue)]
public decimal Amount { get; set; }
}
然后将包含上面编写的属性的类移动到外部项目,并作为Web引用进行引用。导入的类具有'Amount'属性,但是如下所示:
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.7.3190.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://tempuri.org/")]
public partial class Test {
private decimal amountField;
/// <remarks/>
public decimal Amount {
get {
return this.amountField;
}
set {
this.amountField = value;
}
}
}
如您所见,[Required]
,[Display(Name = "Amount", Description = "Amount")]
,[Display(Name = "Amount", Description = "Amount")]
,[DisplayFormat(DataFormatString = "{0:F2}", ApplyFormatInEditMode = true)]
和[Range(1000, int.MaxValue)]
等属性已被忽略。
这些属性仍然是模型验证所必需的,如何通过添加缺少的属性来扩展导入的类,以使表单验证不受影响?