Maison  >  Article  >  développement back-end  >  Comment définir la valeur d'une propriété via la réflexion en C# ?

Comment définir la valeur d'une propriété via la réflexion en C# ?

WBOY
WBOYavant
2023-08-27 15:49:02600parcourir

Comment définir la valeur dune propriété via la réflexion en C# ?

système. L'espace de noms de réflexion contient des classes qui vous permettent d'obtenir des informations sur votre application et d'ajouter dynamiquement des types, des valeurs et des objets à votre application.

Les objets de réflexion sont utilisés pour obtenir des informations de type au moment de l'exécution. Les classes qui permettent d'accéder aux métadonnées d'un programme en cours d'exécution se trouvent dans l'espace de noms System.reflection.

Reflection permet d'afficher les informations sur la propriété au moment de l'exécution.

Reflection permet d'inspecter différents types dans un assemblage et d'instancier ces types.

Reflection permet une liaison tardive aux méthodes et propriétés.

Reflection permet de créer de nouveaux types au moment de l'exécution, puis d'utiliser ces types pour effectuer certaines tâches.

Exemple

GetProperty(String)

Recherchez une propriété publique avec un nom spécifié.

GetType(String, Boolean)

Obtient l'objet Type avec le nom spécifié dans l'instance d'assembly et lève éventuellement une exception si le type n'est pas trouvé.

SetValue(Object, Object)

Définissez la valeur de la propriété de l'objet spécifié.

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; }
}

sortie

Bangalore

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer