0
我有一個列表,我想看看這些字符串是否在單個sql記錄的3個字段中的任何一個使用linq to sql。linq sql對象與列表項匹配的方法
ListA<strings>;
var found=db.People.Where(p=>p.field1 field 2 or field 3 is in ListA). Select this person
我有一個列表,我想看看這些字符串是否在單個sql記錄的3個字段中的任何一個使用linq to sql。linq sql對象與列表項匹配的方法
ListA<strings>;
var found=db.People.Where(p=>p.field1 field 2 or field 3 is in ListA). Select this person
使用此代碼:
ListA<strings>;
var found=db.People.Where(p=>
ListA.Contains(p.field1) || ListaA.Contains(p.field2)
|| ListaA.Contains(p.field3));
請注意,這會從數據庫中的所有記錄和測試應用方面的條件。
編輯:這只是與其他答案相同的代碼,但包括關於它如何工作的說明,所以我不會刪除它。 (由於@Adrian lftode評論而改變)
var found = db.People.Where(p=>ListA.Contains(p.field1) || ListA.Contains(p.field2) || ListA.Contains(p.field3));
你使用的是什麼樣的C# – 2012-03-22 17:40:46
我寫了或代替||。這當然是一個錯誤。但是,我從原始信息中離開了「選擇此人」,因爲我認爲這是某種「僞代碼」。 – JotaBe 2012-03-22 17:47:37
您的答案的問題是由於語法不正確。認爲一個非常新的C#會在看到這個時候感到困惑 – 2012-03-22 17:47:53