ホームページ > バックエンド開発 > C#.Net チュートリアル > C#でリフレクションを介してプロパティ値を設定するにはどうすればよいですか?

C#でリフレクションを介してプロパティ値を設定するにはどうすればよいですか?

WBOY
リリース: 2023-08-27 15:49:02
転載
660 人が閲覧しました

###############システム。リフレクション名前空間には、アプリケーションに関する情報を取得し、型、値、オブジェクトをアプリケーションに動的に追加できるクラスが含まれています。

C#でリフレクションを介してプロパティ値を設定するにはどうすればよいですか?リフレクション オブジェクトは、実行時に型情報を取得するために使用されます。実行中のプログラムのメタデータへのアクセスを許可するクラスは、System.reflection 名前空間にあります。

リフレクションを使用すると、実行時にプロパティ情報を表示できます。

リフレクションを使用すると、アセンブリ内のさまざまな型を検査し、これらの型をインスタンス化できます。

リフレクションにより、メソッドとプロパティへの遅延バインディングが可能になります。

リフレクションを使用すると、実行時に新しい型を作成し、これらの型を使用していくつかのタスクを実行できます。

GetProperty(String)

指定された名前のパブリック プロパティを検索します。

GetType(String, Boolean)

アセンブリ インスタンス内の指定された名前を持つ Type オブジェクトを取得します。型が見つからない場合は、オプションで例外をスローします。

SetValue(Object, Object)

指定されたオブジェクトのプロパティ値を設定します。

class Program{
   static void Main(string[] args){
      User user = new User();
      Type type = user.GetType();
      PropertyInfo prop = type.GetProperty("Name");
      prop.SetValue(user, "Bangalore", null);
      System.Console.WriteLine(user.Name);
      Console.ReadLine();
   }
}
class User{
   public int Id { get; set; }
   public string Name { get; set; }
}
ログイン後にコピー

出力

Bangalore
ログイン後にコピー

以上がC#でリフレクションを介してプロパティ値を設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート