2010-01-15 106 views
0

類屬性的自定義名稱是否有任何屬性?是否有任何類屬性的自定義名稱的屬性?

我現在使用反射來獲取屬性名稱。

 PropertyInfo[] propInfos = typeof(T).GetProperties(); 
     for (int i = 0; i <= propInfos.Length - 1; i++) 
     { 
      sb.Append(propInfos[i].Name); 
      ..... 

     } 

但我想要有自定義名稱。我不想在結果中輸入「姓氏」,而選擇「姓氏」。我不熟悉asp.net屬性。

回答

3

創建一個屬性類:

[AttributeUsage(AttributeTargets.Property)] 
public class PropertyNameAttribute : Attribute 
{ 
    public PropertyNameAttribute(string name) { ... } 
    ... 
} 

與屬性

[PropertyName("Last Name")] 
public string LastName {get;set;} 

與反思裝飾你的屬性,你可以得到這些屬性是這樣的:

var attr = (PropertyNameAttribute)propInfo.GetCustomAttributes(typeof(PropertyNameAttribute), false).Single();