説明のために、アドレス型のAddressプロパティを持つCompanyオブジェクトがあるとしましょう。今私は、オブジェクト型のいずれかの種類で動作する方法を持っていると私は受け取ったオブジェクトから特定のプロパティを取得したいので、私は次のことをしようとしている別のオブジェクトのプロパティであるオブジェクトの型を取得する
public class Company { Address CompanyAddress; } public class Address { int Number; string StreetName; }
:
ので、それはようなものになるだろうpublic string MyMethod(object myObject, string propertyName) { Type objectType = myObject.GetType(); object internalObject = objectType.GetProperty("Address"); Type internalType = internalObject.GetType(); PropertyInfo singleProperty = internalType.GetProperty("StreetName"); return singleProperty.GetValue(internalObject, null).ToString(); }
問題は、internalTypeはAddressではなく "System.Reflection.RuntimePropertyInfo"なので、singlePropertyは常にnullです。
どうすればこの問題を解決できますか?
ありがとうございます。
これは完璧です。どうもありがとうございます !!!! –