リフレクションを使用したプロパティ値の設定
C# ではリフレクションを使用してプロパティの値を動的に設定することができます。これにより、オブジェクトのアクセシビリティや可視性に関係なく、実行時にオブジェクトのプロパティを変更できます。
リフレクションを使用してプロパティ値を設定するには、次の手順に従います。
次に、リフレクションを使用して Person クラスの firstName プロパティを設定する方法を示す例を示します。
using System; using System.Reflection; class Person { public string FirstName { get; set; } } class Test { static void Main(string[] args) { // Create an instance of the Person class Person p = new Person(); // Get the PropertyInfo object for the FirstName property var property = typeof(Person).GetProperty("FirstName"); // Set the value of the FirstName property using reflection property.SetValue(p, "John", null); // Print the value of the FirstName property Console.WriteLine(p.FirstName); // John } }
この例では、プロパティ変数は、Person クラスの FirstName プロパティへの参照を保持します。 SetValue メソッドは、p インスタンスと文字列値「John」を使用して呼び出され、プロパティの値を動的に設定します。
以上がC# でリフレクションを使用してプロパティ値を動的に設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。