0

EF 모델을 사용하는 RIA Services Silverlight 3.0 앱이 있습니다. 모델 메타 데이터에서 클라이언트 측 (TextBoxes 등)의 모델을 참조 할 때 사용하고자하는 여러 Display Name 속성을 포함했습니다.Silverlight Client에서 RIA 서비스를 사용하여 메타 데이터 값을 읽는 방법

나는 지금 반사를 사용하고 있습니다. 시간이 지남에 따라 모델이 변경되면 클라이언트 코드를 업데이트 할 필요가 없도록 클라이언트에서 모델의 속성을 지정합니다. 메타 데이터에 액세스하는 방법을 알 수 없습니다. 사전에

private void Field_Loaded(object sender, RoutedEventArgs e) 
{ 
    System.Reflection.MemberInfo[] members = this.ModelType.GetMembers(); 
    foreach (System.Reflection.MemberInfo member in members) 
    { 
     System.Reflection.PropertyInfo property = member as System.Reflection.PropertyInfo; 
     if (property != null && property.PropertyType == typeof(System.String)) 
     { 
      ComboBoxItem item = new ComboBoxItem(); 
      item.Content = property.Name; // <--- This is where I want to use Display Name 
      this._field.Items.Add(item); 
     } 
    } 
} 

감사합니다,

답변

1

당신은이 GetCustomAttributes을 사용하고 유형으로 DisplayNameAttribute을 통과 할 수 있어야합니다.

+0

감사합니다. Bryant 고맙겠지 만 Silverlight 어셈블리에서 System.ComponentModel.DisplayNameAttribute를 찾을 수 없습니다. 서버의 공간에는 나타나지만 클라이언트에는 나타나지 않습니다. Silverlight에서 특별한 것을 참조해야합니까? –

+0

실제로 DisplayNameAttribute가 아니라 DisplayAttribute를 호출한다고 생각합니다. – Bryant

+0

이상한데, DescriptionAttribute를 찾았지만 정상적으로 작동하지만 Intellisense에서 'Display'로 시작하는 것은 아무것도 아닙니다. –

관련 문제