Maison >développement back-end >C++ >Comment puis-je commander dynamiquement ienumerable et iQueryable en utilisant des expressions de chaînes?

Comment puis-je commander dynamiquement ienumerable et iQueryable en utilisant des expressions de chaînes?

Susan Sarandon
Susan Sarandonoriginal
2025-02-02 22:31:10842parcourir

How Can I Dynamically Order IEnumerable and IQueryable Using String Expressions?

Tri dynamique ienumable

/ iQueryable Problème d'origine:

Lors de la recherche d'exemples LINQ dynamiques, j'ai constaté qu'une méthode peut utiliser SQL String (par exemple, "OrderBy (" Name, Age DESC ")) pour trier l'instance iQueryable . Existe-t-il un moyen d'étendre cette fonction à ienumeration

?

Réponse:

Afin d'y parvenir sans utiliser la bibliothèque LINQ dynamique, le fragment de code suivant fournit une logique d'expression principale:

Ce code lui permet de le trier en emballant iEnumeration

dans Asquile ().

<code class="language-C#">public static IOrderedQueryable<T> OrderBy<T>(
    this IQueryable<T> source,
    string property)
{
    return ApplyOrder<T>(source, property, "OrderBy");
}

// ...省略其余代码以简洁起见...</code>
Extension intégrée dynamique LINQ:

Développez cette fonction à Dynamic Linq:

Ce code fournit des fonctions de tri dynamique dans linq aux objets.

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:
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