1
我在我的一些屬性中調用泛型方法(以填充由NHibernate製作的代理類,雖然現在並不重要)通過MethodBase.GetCurrentMethod()獲取屬性類型的問題。ReflectedType;
要做到這一點,我想要他的屬性類型並將其傳遞給方法這是神奇的,但其中一些屬性是「嵌套」的意思,例如地址屬性會有這個,但地址的國家屬性也有這個功能。
我似乎越來越感到問題是由於地址getter觸發Country Getter,所以當我調用MethodBase.GetCurrentMethod()。ReflectedType;在我的國家/地區屬性中,它返回地址,因爲它的類型,事實上在實際的國家/地區中有問題的屬性的類型。
下面是一些代碼片段:
public virtual Country Country
{
get
{
_country = Backoffice.Library.Serialization.Reflection.GetPossiblyProxyProperty(MethodBase.GetCurrentMethod().ReflectedType, _country);
return _country;
}
set { _country = value; }
}
我,爲什麼這會返回錯誤類型是很笨,我真的想這是因爲可能作爲通用的,我可以OFC只是做一個typeof運算(國家),但後來我不得不設置爲我所有的特性,這很爛:(
是的,我想到了在發佈後約10分鐘,出於某種原因,它返回一個MethodBase對象,如果我將它轉換爲MethodInfo將允許我獲得ReturnType屬性。它在MethodBase上沒有這個,儘管這通過我。 – 2011-01-27 09:27:42