그래서 System.ComponentModel.DataAnnotations 네임 스페이스를 열심히 모델에 추가했습니다. 같은DataGrid 도우미를 만들 때 Reflection을 사용하여 새 데이터 어노테이션 속성에 어떻게 액세스합니까?
내가 추가 한 것 :
[Required] [DisplayName("First Name")]
public string first_name {get;set;}
은 정말 이러한 특성처럼 그들은 사용자 정의 T4 쓰기 및/또는 무겁게 전망을 수정할 필요에서 저를 저장하기 때문이다. 이렇게하면 원하는 표시 이름을 추가 할 수 있다고 확신하는 뷰를 다시 생성 할 수 있습니다.
ASP.NET MVC2에서 영감을 얻은 DataGrid 도우미를 만들 때 문제가 발생합니다.
이 도우미에서 Stephen은 리플렉션을 사용하여 열 제목을 가져옵니다.
var value=typeOf(T).GetProperty(columnName).GetValue(item,null) ?? String.Empty;
글쎄, 문제는 내가 속성 이름을 검색하고 싶지 않다는 것입니다. DisplayName 특성 값을 검색하고 싶습니다.
이것에 대한 첫 번째 시도는 PropertyInfo 클래스의 Attributes 속성을 살펴 보는 것입니다. 아쉽게도 데이터 주석 중 하나도 속성으로 표시되지 않습니다.
리플렉션을 사용하여 데이터 어노테이션을 검색하는 방법이 있습니까?
감사합니다,
론