Utilisez la dynamique réflexe pour obtenir la valeur d'attribut
Afin de simplifier la tâche de conversion de données, les développeurs souhaitent trouver une méthode qui peut utiliser les paramètres de chaîne pour obtenir directement la valeur d'attribut par réflexion, évitant ainsi les besoins de la comparaison de type explicite et du nom d'attribut standard.
Question:
Est-il possible d'utiliser un paramètre de chaîne contenant un nom de classe et un nom d'attribut pour obtenir la valeur d'attribut?Réponse: Oui, l'utilisation du réflexe peut être implémentée dynamiquement. Le fragment de code suivant montre comment réaliser:
Dans cette méthode, la valeur d'attribut est obtenue en obtenant le nom d'attribut fourni par la réflexion, puis en accédant à sa valeur. Veuillez noter que pour une utilisation réelle, la vérification et le traitement d'erreur peuvent être nécessaires.
comment utiliser:<code class="language-csharp">public static object GetPropValue(object src, string propName) { return src.GetType().GetProperty(propName).GetValue(src, null); }</code>
Pour utiliser cette méthode, il vous suffit de passer l'objet cible et le nom d'attribut requis (en tant que chaîne) comme paramètre. Par exemple, si vous avez un objet appelé
, il a un attribut appelé , vous pouvez récupérer sa valeur de la manière suivante:
Cette méthode fournit un moyen pratique et flexible d'accéder dynamiquement à la valeur d'attribut, sans avoir besoin de vérifier explicitement ou de prédéterminer les noms d'attribut. person
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!