C# · 12月 31, 2021

c# – 将字符串解析成LINQ查询

将查询中的LINQ字符串解析为最佳做法是什么?

换句话说,什么方法最有意义的是转换:

string query = @”from element in source where element.Property = “”param”” select element”;

IEnumerable<Element> = from element in source where element.Property = “param” select element;

假设源指的是IEnumerable< Element>或IQueryable< Element>在当地范围内.

解决方法 它需要一些文本解析和大量使用 System.Linq.Expressions.我已经做了一些这样的 here和 here的困扰.第二篇文章中的代码从第一个更新,但仍然粗糙的地方.我偶尔会继续混淆这个,有一个更干净的版本,如果你有兴趣,我已经意思是发布.我已经很接近支持ANSI sql 89的一个很好的子集.