저는 계정 모델을위한 Account 클래스를 가지고 있습니다.asp.net core mvc에서 Model과 ViewModel의 차이점은 무엇입니까?
public class Account
{
[Key]
public Int64 UID { get; set; }
[Required]
public string ID { get; set; }
[Required]
public string PassWord { get; set; }
[Required]
public string UserName { get; set; }
}
내 프로젝트는 코드 첫 번째 프로젝트가 아니며 데이터베이스 '계정'의 모델 클래스입니다.
하지만 로그인보기, 문자열 ID 및 문자열 PassWord에서 두 가지 속성 만 사용합니다. 내가 두 속성을 사용하기 때문에 모델의 유효성을 검사 할 때 그래서 나는
그래서 내가 그 다음에 대해 검색, 지금은 '뷰 모델'에 대한 발견 ... 로그인 컨트롤러 ModelState.Isvalid()를 사용할 수 없습니다 뷰의 모델 클래스입니다.그런 다음 'AccountViewModel'이라는 새 클래스를 만든 다음 'Account'모델 대신보기로 매핑했습니다.
내 길은 맞았습니까? ViewModel은 View 용 모델 클래스라는 것을 이해했습니다. 그리고 모델 클래스는 모두를위한 것입니다. (DB, 뷰 등등을위한 전역적인 의미 ...?)
Model과 ViewModel 클래스의 차이점은 무엇입니까? 이 문제를 해결할 수있는 좋은 방법이 있습니까?
고마워요. 하지만 모델에 대해 더 궁금한 점이 있습니다. ViewModel은보기 용이고 Model은 DB 컨텍스트 용임을 이해했습니다. 그렇다면 실제 MSSQL DB Table 열과 [Key] 또는 [Required]와 같은 주석을 설정해야합니까? – HelloWorld