2014-01-13 25 views
0

一種客觀的問題,可能會進入其他網站之一,但林不知道如此問我在這裏!Linq Lambdas vs SQL Like Notation

使用lambda表示法與使用更多「sql like」表示法相比,有哪些優缺點?我個人更喜歡可讀性的「sql like」方法,但它們是否都編譯爲相同的IL?是否有任何性能差異?編譯器的處理方式是什麼?

例如。

Foo.Where(Bar => Bar.Stuff == "SomeString") 

VS

from Foo in Bar 
where Bar.Stuff == "SomeString" 
select Foo 
+3

是的,它們都編譯到相同的IL。 – rae1

+1

您的查詢對我沒有多大影響。我假設你的意思是這樣的:'從Foo裏的bar中取出bar.Stuff ==「SomeString」選擇欄。至少這與第一個查詢相同「。 –

回答

2

無其實。沒有性能difference.These是相同的:

from Foo in Bar 
where Bar.Stuff == "SomeString" 
select Foo 

Foo.Where(Bar => Bar.Stuff == "SomeString") 

首先聲明轉換爲第二由編譯器scenes.Which一個很容易在你身後,用它。

+0

感謝時間到期時設置爲答案 –

+0

@statue不要編輯我這樣的答案!如果你想說點不同的話寫你自己的答案 –

+0

我真的想翻譯你的答案。你的英語對我來說毫無意義(至少是最後一行),我認爲這就是你的意圖。 – statue