유효성 검사 블록 대 Nhibernate.validator
-
03-07-2019 - |
문제
나는 검증 프레임 워크를 찾고 있고 이미 nhibernate를 사용하고있는 동안 nhibernate.validator from contrib project를 사용하고 있다고 생각하지만 강력한 것으로 보이지만 아직 각각에 대해 자세히 설명하지는 않습니다. 누구 든지이 두 프레임 워크에 들어간 사람이 있었으며 경험은 어떻게 어떨까요?
해결책
Nhibernate Validator는 지속성을 위해 nhibernate를 사용할 필요가 없습니다. 사용량은 다음과 같이 간단 할 수 있습니다.
var engine = new ValidatorEngine();
InvalidValue[] errors = engine.Validate(someModelObjectWithAttributes);
foreach(var error in errors)
{
Console.WriteLine(error.Message);
}
물론 그것은 nhibernate에 연결되어 유효하지 않은 객체의 지속성을 방지 할 수 있지만,이를 사용할 수 있습니다.
다른 팁
대부분의 경우 Spring.net은 꽤 독립적이라고 말할 것입니다. 즉, 당신이 재구성하도록 강요해서는 안됩니다. 원하는만큼 많이 사용할 수 있습니다. 스프링을 사용하여 검증이 필요한 클래스에 주입 할 수있는 객체를 작성하는 것은 매우 쉽습니다. 그런 다음 캐슬 에서이 개체를 연결하여 필요한 "검증 그룹"또는 "유효성 검사기"의 이름을 가져간 다음 Spring이 양식/비즈니스 객체/서비스가 유효성 검사기를 사용하는 객체에 유효성 검사기를 주입하도록합니다.
다음은 DOC에 대한 링크입니다. 검증은 섹션 12입니다.
http://www.springframework.net/docs/1.2.0-m1/reference/html/index.html
당신은 단지 Castle을 사용하고 있습니까, 아니면 Monorail을 사용하고 있습니까?
물론 자신의 검증 프레임 워크를 작성하려고 노력할 수 있습니다. 예를 들어. Karl Seguin이 도움을 드릴 것입니다.
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
정말 좋은 솔루션입니다 :)
D) 위의 어느 것도. 작년에 평가 한 것을 기억하고 Spring.net의 검증 프레임 워크와 함께 가기로 결정했습니다.
nhibernate를 사용하는 경우 nhibernate를 사용하기 위해 Spring.net 시설을 사용하고 싶을 것입니다.