Einstellen von Eigenschaftswerten mit Reflexion
Es ist möglich, den Wert einer Eigenschaft mit Reflexion in C#dynamisch festzulegen. Auf diese Weise können Sie die Eigenschaft eines Objekts zur Laufzeit ändern, unabhängig von seiner Zugänglichkeit oder Sichtbarkeit.
, um einen Eigenschaftswert unter Verwendung von Reflexionen festzulegen, befolgen Sie die folgenden Schritte:
Hier ist ein Beispiel, das demonstriert, wie man Reflexion verwendet, um die FirstName -Eigenschaft einer Personklasse festzulegen:
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 } }
In diesem Beispiel enthält die Eigenschaftsvariable einen Verweis auf die FirstName -Eigenschaft der Personklasse. Die SetValue -Methode wird mit der P -Instanz und dem String -Wert "John" aufgerufen, um den Wert der Eigenschaft dynamisch festzulegen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3