0

У меня есть приложение RIA Services Silverlight 3.0 с использованием модели EF. В метаданных модели я включил несколько свойств Display Name, которые я хотел бы использовать, ссылаясь на модель на стороне клиента (в TextBoxes и т. Д.).Как читать значения метаданных от клиента Silverlight с услугами 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

Спасибо, Брайант, но я не могу найти System.ComponentModel.DisplayNameAttribute в сборке Silverlight. Он отображается в пространстве на сервере, но не у клиента. Нужно ли мне ссылаться на что-то особенное, чтобы получить его в Silverlight? –

+0

Я думаю, что на самом деле это вызов DisplayAttribute, а не DisplayNameAttribute. – Bryant

+0

Странно, я нашел DescriptionAttribute, и это работает нормально, но ничего не начинается с «Дисплей» в Intellisense. –

 Смежные вопросы

  • Нет связанных вопросов^_^