Maison >développement back-end >C++ >Comment puis-je récupérer un nom de propriété à partir d'une expression de lambda en C #?
Extraire le nom d'attribut de l'expression lambda
L'implémentation initiale impliquait l'expression de la conversion de lambda en une expression de membre, en supposant que l'attribut est une chaîne. Cependant, cela ne s'applique qu'aux attributs de chaîne.
Afin de résoudre ce problème, une méthode plus complète est nécessaire, qui peut gérer en même temps des attributs de chaîne et de non-string. La méthode suivante fournit une solution:
<code class="language-csharp">public static PropertyInfo GetPropertyInfo<TSource, TProperty>( TSource source, Expression<Func<TSource, TProperty>> propertyLambda)</code>Cette méthode accepte les objets source et les expressions lambda en entrée et renvoie l'objet PropertyInfo qui indique les attributs accessibles. Si l'expression ne cite pas l'attribut, elle provoquera des anomalies.
dans la mise en œuvre de la méthode:
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!