簡體   English   中英

我可以將C#代碼轉換為Linq代碼嗎?

[英]Can I can convert this C# code into some Linq code?

我有以下string array並想將內容轉換為linq Where子句,如下所示。

我有 ...

var words[] = new string [] { "aaa", "bbb", "ccc", "ddd" };

並希望....

.Where(x => x.Word == "aaa" && x.Word == "bbb" && 
            x.Word == "ccc" && x.Word == "ddd")

干杯:)

更新:為什么&&而不是||

這實際上是針對RavenDb的,它足夠聰明,可以將linq轉換為其中包含AND的Lucene查詢...

所以我真的需要它成為&&

更新2:更清楚地說明為什么我要使用&&而不是||

當被告知將linq轉換為lucene時,RavenDB中的Linq提供程序將執行以下操作。

.Where(x => x.Word == "aaa" && x.Word == "bbb")

得到翻譯成

Query:aaa AND Query:bbb

所以請,我真的很感謝您的幫助,而不是使用|| 這不是linq to objects linq to ef也不是linq to ef ,等等。

.Where(x => words.Contains(x.Word))

UPD :這對於問題的初始修訂完全有效

如果要使用&&則要求滿足所有條件。 您可以嘗試使用All運算符:

.Where(item => words.All(word => word == item));

這似乎非常違反直覺,但值得嘗試!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM