0

MVC 응용 프로그램을 개발 중입니다. 개발 중에 EF 4.0을 사용했습니다. 모델에서 클래스를 만들었습니다. 이제 MVC가 만든 각 클래스에 대해 더 많은 클래스를 추가하고 싶습니다.부분 클래스의 속성을 재정의하려면 어떻게해야합니까?

ex. 아래 코드에서 Location 클래스를 얻습니다. 이제 하나 이상의 클래스를 만들고 싶습니다. (부분 클래스) 부분 클래스의 속성을 재정의하려면 어떻게해야합니까?

어떻게 수행하나요?

namespace Entities 
{ 
    public partial class Location 
    {    
     public int Id { get; set; } 

     public string Name { get; set; } 
     public string Remark { get; set; }  
     public string State { get; set; }  
     public string Region { get; set; } 
     public string PinCode { get; set; } 

     public virtual ICollection<Comment> Comments { get; set; } 
    }  
} 
+0

"부분 클래스의 속성 재정의"란 무엇을 의미합니까? –

+0

부분 클래스의 속성에 대한 유효성 검사를하고 싶습니다. 예를 들어. 부분 클래스에서 다음 코드를 추가 할 수 있습니다. '[StringLength (50, ErrorMessage = "Region은 최대 50 자까지 허용 할 수 있습니다.")] public string Region {get; 세트; } ' – nilesh1foru

+0

현재 수업을들을 수없는 이유는 무엇입니까? –

답변

12

당신은 (어떤 사용자 지정 도구를 통해) 다음 클래스를 생성 한 경우 당신은

public partial class Location 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public string Remark { get; set; } 
    public string State { get; set; } 
    public string Region { get; set; } 
    public string PinCode { get; set; } 
    public virtual ICollection<Comment> Comments { get; set; } 
} 

당신의 속성에 주석을 추가 할 수있는 인터페이스

와 부분 클래스에 장식을 속성 할 수 새로운 인터페이스와 새로운 부분 클래스를 생성하여 (생성 된 파일을 수정하지 않고) 생성 된 클래스를 다음과 같이 생성합니다.

public interface ILocation 
    { 
     [StringLength(50, ErrorMessage = "Region can accept maximum 50 characters.")] 
     string Region { get; set; } 
    } 

    public partial class Location :ILocation 
    { 
    } 
+0

감사합니다.하지만이 코드는 어디에 쓸 수 있습니까? 어떤 반에서? 부분 수업 (새로운 수업)? 생성 된 클래스에 아무것도 추가하지 않아도됩니다. 구조가 수정되지 않을 때까지 여러 번 생성되기 때문입니다. – nilesh1foru

+0

@ nilesh1foru ive 님이 귀하의 특정 케이스에 적용 할 답변을 업데이트했습니다. –

+0

다시 한번 감사 드리지만 위의 코드를 새로운 클래스에 그대로 쓸 수 있습니까? (새 부분 클래스, 새 코드 파일) – nilesh1foru

0

필요한 경우 유효성 검사 만 수행하면 소위 메타 데이터 유형을 사용할 수 있습니다.

자세한 자습서는 here입니다.

관련 문제