私は実際にオブジェクトを拡張するdeepToStringメソッドをプログラミングしています。これは、リフレクションを使用してオブジェクトの各プロパティを取得し、このプロパティのdeepToStringメソッドを呼び出します。列挙型を除いてすべてうまく動作します。私がPropertyInfo.GetValue()
を列挙型で使用しようとすると、常に0が返されます。C#で不明な列挙型から値を取得するにはどうすればよいですか?
実際のint値を取得するにはどうすればよいですか?私は何が欠けていますか?
あなたは私たちに動作しないコード、およびそれを得るために失敗したその値が列挙型を持つクラスの短いサンプルを示すことができていますか?あなたが記述する方法はちょうどうまくいくはずです。あなたのクラスについて何か特別なものか、あるいはあなたがenumにアクセスする方法について何か特別なものがなければなりません。 – dasblinkenlight
愚かな私!あなたが正しい。値は設定されていません。なぜそれが「0」になったのかという理由がありました。 'PropertyInfo.GetValue(オブジェクト、null)'は素晴らしい作品:) – germanSharper