如何动态创建LINQ QUERY?

时间:2010-10-22 08:55:11

标签: c# linq dynamic

有没有办法在{}之间动态插入部分代码?

LINQ QUERY:

var csvdata = from csvline in csvlines  
              let column = csvline.Split(';')  
              select new {  
                produkt = column[0],  
                cislo = column[1],  
                part = column[2],  
                serial = column[3]  
              };  

我的意思是:

string qpart = "produkt = column[0], cislo = column[1], part = column[2], serial = column[3]";  

var csvdata = from csvline in csvlines  
              let column = csvline.Split(';')  
              select new {  
                qpart  
              };  

感谢您的回答..

1 个答案:

答案 0 :(得分:1)

尝试调查Dynamic Linq查询库。

http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx

http://naspinski.net/post/Writing-Dynamic-Linq-Queries-in-Linq-to-Entities.aspx

你需要将从Split返回的字符串数组转换为IQueryable才能生效,但我认为这是你最好的镜头。

var results = columns
  .Select("new(column[0] As produkt)");

我认为它是如何工作的?