2014-09-24 10 views
0

일부 속성이있는 모델이 있는데 필요하지 않은 양식에서 사용되므로 모델에 필수 항목이 필요하지 않습니다 ([필수]). 이제이 모델을 사용하여 양식을 작성해야하는데,이 모델의 속성 중 하나가 필요해야합니다. ¿ 모델 클래스를 변경하지 않고이 속성을 필수로 만들 수있는 방법이 있습니까? 사전에C# -보기에 필요한 속성 만들기

더 나은 너무 JS없는 경우,하지만 다른 방법이없는 경우 ... = P

감사합니다!

답변

2

테스트를 거치지는 않았지만 제대로 작동하는 것으로 보입니다.

필요한 모든 필드가 포함 된 기본 모델을 만들 수 있습니다. 파생 모델 클래스에서 필요한 특정 속성을 파생시키고 여기에 특성을 설정합니다.

+2

내가 엔티티 프레임 워크에서 사용되는 개체에 속성을 추가하기 위해이 솔루션을 사용하고, 나는 그것이 작동 – simoneL

+0

을 작동하는 것을 확인 할 수 있습니다 예를 들면 다음과 같습니다

. 감사! – javiazo

1

패트릭 솔루션의 대안은 MetadataType 속성을 사용하는 것입니다.

기본적으로 원본 클래스에서 파생 된 클래스를 만들고, 모든 특성을 지정하는 별도의 클래스를 만듭니다.

public class User { 
    public string Email { get; set; } 
} 

[MetadataType(typeof(InsertUserModelMetadata))] 
public class InsertUserModel : User { 
} 


internal class InsertUserModelMetadata { 
    [Required] 
    public string Email { get; set; } 
} 
+0

흥미로운 대답이지만, 이전 질문으로 충분했습니다. 어쨌든 고마워;) – javiazo