2010-11-08 90 views

回答

0

回答以下評論:

string teststring = "one, two, three"; 

var x = from string z in (teststring.Split(',').AsEnumerable()) 
where z.Trim() == "two" 
select z; 

你到底想幹什麼?下面的工作只是在LINQPad

from z in ("4,3,5,2,1".Split(',').AsEnumerable()) 
    select z 

+0

//我如何評估動態Linq中是否包含子字符串'two'? string teststring =「(\」one,two,three \「。Split(','))」; – ljm 2010-11-08 20:42:27

+0

好的,我會爲你寫的... – Hogan 2010-11-08 20:43:19

+0

回顧這個來理解我的問題的上下文。 http://aspalliance.com/1569_Dynamic_LINQ_Part_1_Using_the_LINQ_Dynamic_Query_Library – ljm 2010-11-08 21:12:10

1

動態罰款的LINQ確實支持String.Split,也呼籲其他.NET類型的方法如下圖所示

var query = 
       db.Customers.Where("City.Split(\"abc\".ToCharArray()).Length == 1 and Orders.Count >= @1", "London", 10). 
       OrderBy("CompanyName"). 
       Select("New(CompanyName as Name, Phone)"); 

它能夠將字符串轉換爲表達式樹,但作爲SQL沒有任何字符串拆分操作,它會拋出錯誤,如果您在SQL上運行它會拋出錯誤