Допустимое размещение System.ComponentModel.DataAnnotations в свойствах и инкапсулированных полях. - PullRequest
0 голосов
/ 30 апреля 2018

Я использую различные синтаксисы System.ComponentModel.DataAnnotations в моей модели. Интересно, есть ли какие-либо последствия для размещения DataAnnotations с использованием этого короткого синтаксиса, а также размещения, показанного ниже, где DataAnnotations для атрибутов, а не методов Accessor и Modifier.

Моя модель с тем, что я считаю наилучшим практическим размещением для DataAnnotations, и это работает, как и ожидалось, когда я добавляю поддержку OData в свой класс базы данных Context, не размещенный здесь

public class WebOrder
{
    private Guid _id;
    private float _total;
    private string _name;         

    [Key]
    public Guid Id { get; private set; }

    [Required]
    public float Total
    {
        get { return _total; }
        set { _total = value; }
    }        

    [Required]
    public string Name { get => _name; set => _name = value; }
}

Будет ли это размещение DataAnnotations также считаться действительным

public class WebOrder
{
    [Key]
    private Guid _id;
    [Required]     
    private float _total;
    [Required]    
    private string _name;         

    public Guid Id { get; private set; }

    public float Total
    {
        get { return _total; }
        set { _total = value; }
    }        

    public string Name { get => _name; set => _name = value; }
}
...