Maison >développement back-end >C++ >Les requêtes dynamiques LINQ peuvent-elles être créées à partir d'une configuration XML ?
Question :
Pouvons-nous construire des requêtes LINQ dynamiquement sans modifier le code source ? Dans ce scénario, les paramètres de requête seraient extraits d'une configuration XML stockée dans la base de données.
Exemple :
var result = from i in someObj where name = 'Bob'
Génération de requête dynamique :
Réponse :
Les arbres d'expression offrent une solution pour cette génération de requêtes dynamiques. Voici un exemple de code :
var param = Expression.Parameter(typeof(SomeObject), "p"); var exp = Expression.Lambda<Func<SomeObject, bool>>( Expression.Equal( Expression.Property(param, "Name"), Expression.Constant("Bob") ), param ); var query = someObj.Where(exp);
Explication :
Remarque : Cette approche est plus complexe mais offre une flexibilité pour les situations où la construction de requêtes dynamiques est essentielle à partir d'une configuration XML.
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!