Использование DataAnnotations и Validation в моей собственной постоянной структуре? - PullRequest
0 голосов
/ 08 апреля 2011

Я создаю программу, которая опирается на старую унаследованную систему. Я особенно пишу собственный репозиторий CRUD над классами POCO / постоянных агностических моделей.

Ex (упрощенно):

public class Company { // No dep with the legacy objects
    public string CompanyName {get; set;}
}

public class CompanyRepository { // other project
    public Company Get(ID companyID)
    {
        var myOldSchoolCompany = oldSystem.GetCompany(companyID.Key);
        return new Company { CompanyName = myOldSchoolCompany.CompanyName; }
    }
    public Company Save(Company company)
    {
        var myOldSchoolCompany = oldSystem.GetCompany(companyID.Key);
        myOldSchoolCompany.CompanyName = company.CompanyName;
        oldSystem.Save(myOldSchoolCompany);
    }        
}

этот код работает, как и ожидалось, но я бы хотел пойти дальше, добавив проверки и проверки. Мне нужно иметь обязательные поля, проверку диапазона и т. Д.

Мне нравятся механизмы DataAnnotation, которые позволяют мне добавлять эту информацию к самой модели. Возможно ли (и хорошая идея) повторно использовать эти механизмы? Точно, существует ли метод проверки OOB, который может проверять объект модели?

спасибо заранее, стив

1 Ответ

2 голосов
/ 08 апреля 2011

Я думаю, что для проверки рекомендуется использовать аннотации. Некоторые распространенные фреймворки, такие как ASP.NET MVC, Entity Framwork, используют это. Вы можете использовать класс Validator для проверки аннотированного объекта.

Я рекомендую вам создать небольшую платформу для интеграции инфраструктуры аннотаций и ваших системных классов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...