的一部分:Let子句因爲它爲什麼可以使用此連接語句
from r1 in Enumerable.Range(1, 10)
join q1 in Enumerable.Range(1, 20) on r1 equals q1
select r1;
,但無法使用此:
from r1 in Enumerable.Range(1, 10)
let q = Enumerable.Range(1, 20)
join q1 in q on r1 equals q1
select r1;
的MSDN documentation上let clause
缺少一些細節。
更新: 我只是試圖讓表達式更清晰可讀。在我的情況下,我想用一些方法鏈接let clause
。否則,加入條款變得太可怕了。因爲它是不可能使用let clause
(如喬恩提及)我介紹了外部變量,在這裏:
IEnumerable<int> q = Enumerable.Range(1, 10);
from r1 in Enumerable.Range(1, 10)
join q1 in q on r1 equals q1
select r1;
看到我的答案中的MSDN博客鏈接...他們解釋它很不錯... – Yahia