C # Расширить класс веб-ссылок с потерянными атрибутами - PullRequest
0 голосов
/ 10 мая 2019

Возможно ли заменить утерянные атрибуты, расширив класс из веб-ссылки.

Например, ранее класс, содержащий свойство с именем '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; }
}

Класс, содержащий свойство, как написано выше, затем был перемещен во внешний проект и стал ссылаться как веб-ссылка. Импортируемый класс имеет свойство '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)], были приняты.

Эти атрибуты все еще необходимы для проверки модели. Как я могу расширить импортированный класс, добавив отсутствующие атрибуты, чтобы проверка формы не была затронута?

...