3
我嘗試在某個對象上添加屬性。這個對象可以是int,string,List或其他。在運行期間未發生對象添加屬性
我嘗試使用
TypeDescriptor.AddAttributes(object, attrList.ToArray());
但這個屬性列表不顯示,當我做:
object.GetType().GetCustomAttributes(false)
怎麼來的?
最好的問候,
加布裏埃爾三位的
我嘗試在某個對象上添加屬性。這個對象可以是int,string,List或其他。在運行期間未發生對象添加屬性
我嘗試使用
TypeDescriptor.AddAttributes(object, attrList.ToArray());
但這個屬性列表不顯示,當我做:
object.GetType().GetCustomAttributes(false)
怎麼來的?
最好的問候,
加布裏埃爾三位的
不幸的是這種方法不動態改變類型的元數據,最終也只給你回TypeDescriptor包括您添加的屬性。
你需要保持從那裏,而不是AddAttributes方法的返回值和查詢......
var myObject = { ... }
var typeDescriptionProvider = TypeDescriptor.AddAttributes(myObject, attrList.ToArray());
var attributes = typeDescriptionProvider.GetTypeDescriptor(myObject).GetAttributes();
你能想到的類型描述符作爲類型元數據本身(固定)的聯合,您在運行時添加的任何元數據(動態)。
天哪,我剛剛失去了2到3小時試圖動態添加AspNetCompatibilityRequirementsAttribute,這是我的最後一次鏡頭。 – 2012-10-04 20:51:16