Maison > développement back-end > C++ > Comment récupérer dynamiquement les valeurs de propriété par nom en C# ?

Comment récupérer dynamiquement les valeurs de propriété par nom en C# ?

Susan Sarandon
Libérer: 2025-01-06 16:54:40
original
377 Les gens l'ont consulté

How to Dynamically Retrieve Property Values by Name in C#?

Récupération des valeurs de propriété par nom en C

En C#, un scénario courant se présente dans lequel il faut accéder dynamiquement à la valeur d'une propriété d'un objet en fonction de son nom . Cela peut être utile pour la programmation générique ou les scénarios basés sur la réflexion.

Pour y parvenir, vous pouvez exploiter les capacités de réflexion de .NET. Voici comment :

public string GetPropertyValue(string propertyName)
{
    // Retrieve the type of the object
    Type type = car.GetType();

    // Obtain the property information based on its name
    PropertyInfo property = type.GetProperty(propertyName);

    // Invoke the `GetValue` method to retrieve the property value
    object value = property.GetValue(car, null);

    // Return the property value as a string
    return value.ToString();
}
Copier après la connexion

Dans cette méthode :

  • car.GetType() obtient le type de l'objet voiture.
  • type.GetProperty(propertyName) récupère le PropertyInfo du nom de propriété spécifié.
  • property.GetValue(car, null) invoque la méthode GetValue pour récupérer la valeur de la propriété, en passant l'objet voiture et null pour les paramètres facultatifs.
  • La valeur de la propriété est renvoyée sous forme de chaîne.

Utiliser cette méthode pour la voiture objet avec le nom de propriété « Make », il renverra la valeur « Ford ». Cette approche permet une récupération flexible et dynamique de la valeur des propriétés en C#.

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 de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal