Блок валидации против Nhibernate.Validator - PullRequest
6 голосов
/ 30 сентября 2008

Я ищу платформу для валидации, и хотя я уже использую NHibernate, я думаю об использовании NHibernate.validator из проекта contrib, однако я также смотрю на блок MS Validation Block, который кажется надежным, но я пока не разбираюсь в деталях каждого из них. один еще, так что мне интересно, кто-нибудь сделал шаг в эти две структуры и как выглядит опыт?

Ответы [ 4 ]

10 голосов
/ 25 апреля 2009

NHibernate Validator не требует от вас использовать NHibernate для персистентности. Использование может быть простым:

var engine = new ValidatorEngine();
InvalidValue[] errors = engine.Validate(someModelObjectWithAttributes);

foreach(var error in errors)
{
    Console.WriteLine(error.Message);
}

Конечно, он может подключиться к NHibernate и предотвратить сохранение недопустимых объектов, но вы также можете использовать его для проверки непостоянных объектов.

0 голосов
/ 22 июня 2009

Конечно, вы можете попытаться написать собственную платформу валидации. Например, Карл Сегуин поможет вам:

http://codebetter.com/blogs/karlseguin/archive/2009/04/26/validation-part-1-getting-started.aspx

http://codebetter.com/blogs/karlseguin/archive/2009/04/27/validation-part-2-client-side.aspx

http://codebetter.com/blogs/karlseguin/archive/2009/04/28/validation-part-3-server-side.aspx

Это действительно хорошее решение:)

0 голосов
/ 30 сентября 2008

По большей части я бы сказал, что Spring.NET довольно независимый. То есть это не должно заставлять вас перестраивать архитектуру. Вы можете использовать столько, сколько захотите. Должно быть довольно легко написать объект, который вы можете внедрить в классы, нуждающиеся в валидации с использованием Spring. Затем вы должны связать этот объект в замке, чтобы взять имя нужной вам «группы валидации» или «валидаторов», а затем заставить Spring внедрить валидаторы в тот объект, где ваша форма / бизнес-объект / служба будет затем использовать валидаторы. 1001 *

Вот ссылка на документ, валидация - раздел 12:

http://www.springframework.net/docs/1.2.0-M1/reference/html/index.html

Вы используете Касл или Монорельс?

0 голосов
/ 30 сентября 2008

Как насчет D) Ничего из вышеперечисленного. Я помню, как оценивал это в прошлом году и решил использовать платформу валидации Spring.NET.

Если вы используете NHibernate, вы, вероятно, захотите использовать возможности Spring.NET для использования NHibernate.

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