[解決済み] 特定のプロパティのPropertyInfoを取得する方法を教えてください。
2023-04-28 04:21:59
質問
特定のプロパティのPropertyInfoを取得したい。 私は使用することができます。
foreach(PropertyInfo p in typeof(MyObject).GetProperties())
{
if ( p.Name == "MyProperty") { return p }
}
と同じようなことをする方法があるはずです。
typeof(MyProperty) as PropertyInfo
はあるのでしょうか? それとも型にとらわれない文字列比較で行き詰まるのでしょうか?
乾杯。
どのように解決するのですか?
新しい
nameof()
演算子は、C# 6 の一部であり、Visual Studio 2015 で利用可能です。詳細はこちら
はこちら
.
あなたの例では、使用します。
PropertyInfo result = typeof(MyObject).GetProperty(nameof(MyObject.MyProperty));
コンパイラは
nameof(MyObject.MyProperty)
を文字列 "MyProperty" に変換しますが、Visual Studio や ReSharper などはプロパティ名をリファクタリングする方法を知っているので、文字列を変更するのを忘れることなく、プロパティ名をリファクタリングできるという利点があります。
nameof()
の値をリファクタリングする方法を知っているからです。
関連
-
[解決済み】ファイルへの読み書きの際に共有違反のIOExceptionが発生する C#
-
[解決済み] リフレクションを使用して文字列からプロパティ値を取得する
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] enumを列挙するには
-
[解決済み] intをenumにキャストするにはどうすればよいですか?
-
[解決済み] C#で文字列のエンコーディングを手動で指定せずに、一貫性のあるバイト表現を得るには?
-
[解決済み] C#のオートプロパティに初期値を与える最良の方法は何ですか?
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] List<T>をオブジェクトのプロパティでソートする方法
-
[解決済み] PropertyInfo を使用してプロパティの種類を確認する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] エンティティタイプ ApplicationUser は、現在のコンテキストのモデルの一部ではありません。
-
[解決済み】C#で四捨五入する方法
-
[解決済み】C#におけるtypedefの等価性
-
[解決済み】統合マネージドパイプラインモードで適用されないASP.NETの設定が検出された
-
解決済み] Critical error detected c0000374 - C++ dll returns pointer off allocated memory to C# [解決済み] Critical error detected c0000374 - C++ dll returns pointer off allocated memory to C#.
-
[解決済み】非静的メソッドはターゲットを必要とする
-
[解決済み】EF 5 Enable-Migrations : アセンブリにコンテキストタイプが見つかりませんでした
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み】スレッド終了またはアプリケーションの要求により、I/O操作が中断されました。