2011-04-08 2 views
0

Я строю программу, которая опирается на старую устаревшую систему. Я особенно пишу пользовательский репозиторий CRUD над классами POCO/persist agnostic.Использование DataAnnotations и Validation в моей собственной постоянной структуре?

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, который может проверять объект модели?

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

ответ

2

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

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

+0

проще, чем я думал;) thx –

Смежные вопросы