0

EFモデルを使用するRIAServicesSilverlight3.0アプリがあります。モデルメタデータには、クライアント側(TextBoxなど)でモデルを参照するときに使用したいいくつかの表示名プロパティを含めました。

現在、リフレクションを使用してクライアント上のモデルのプロパティを取得しているため、モデルが時間の経過とともに変化した場合でも、クライアントコードを更新する必要はありません。メタデータにアクセスする方法がわかりません。

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);
        }
    }
}

前もって感謝します、

4

1 に答える 1

1

これは、 GetCustomAttributesを使用し、DisplayNameAttribute をタイプとして渡すことで実行できるはずです。

于 2009-11-16T18:59:06.570 に答える