저는 ASP.NET MVC 응용 프로그램이 있으며 데이터 주석 특성을 기반으로 레벨보기 모델 유효성 검사와 도메인 모델 유효성 검사 모두에 대한 유효성을 확인하고자합니다. 보기 모델의 검증은 간단합니다 작동합니다MVC - 도메인 모델 유효성 검사
public class CustomerFormVM
{
[Required]
[Display(Name = "Name")]
public string Name { get; set; }
[Required]
[Display(Name = "Street")]
public string Street { get; set; }
[Required]
[Display(Name = "City")]
public string City { get; set; }
[Required]
[Display(Name = "State")]
public string State { get; set; }
}
다음 컨트롤러 전화 :
if (ModelState.IsValid)
{
나는 같은 도메인 모델 클래스가 있습니다
public class CustomerFormPoco
{
[Required]
[Display(Name = "Name")]
public string Name { get; set; }
[Required]
[Display(Name = "Street")]
public string Street { get; set; }
[Required]
[Display(Name = "City")]
public string City { get; set; }
[Required]
[Display(Name = "State")]
public string State { get; set; }
}
을하지만, 그것을 어떻게 확인할 수 있나요?
// viewmodel is CustomerFormVM object
var pocoModel = mapper.Map<CustomerFormPoco>(viewmodel);
내가 다음 '뷰 모델'변수를 확인하지 않으면 내가 널 이름, 거리, 도시와 'pocoModel'변수 ...
어떻게 확인 전화를하고 결정을 내릴를 얻을 결과에 따라?
왜 뷰 모델을 확인하지 :
는이 같은 덜 중복와 함께 할 아마 것? –모든 데이터를 다시 검증하는 대신, 뷰 모델을 사용하여 응용 프로그램 계층에서 데이터의 유효성을 이미 확인했다고 가정하는 것이 좋습니다. 귀하의 도메인은 데이터가 아닌 비즈니스 규칙의 유효성 확인에 중점을 두어야합니다. – Alisson
jQuery 유효성 검사는 클라이언트 측에서 viewmodel의 유효성 검사를 처리 할 수 있습니다. 당신은 단순해야하는'Required' 속성만을 사용하기 때문에. 그런 다음 통과하면 서버 측의 유효성 검사에 대해 걱정할 필요가 없습니다. –