Sử dụng các tính năng hiểu trình biên dịch C# truy vấn, bạn có thể viết mã như:Mã tương đương với 'let' từ khóa trong phương pháp khuyến nông LINQ xích gọi
var names = new string[] { "Dog", "Cat", "Giraffe", "Monkey", "Tortoise" };
var result =
from animalName in names
let nameLength = animalName.Length
where nameLength > 3
orderby nameLength
select animalName;
Trong biểu thức truy vấn trên, các từ khóa let
cho phép một giá trị được chuyển tiếp tới các hoạt động ở vị trí và đơn đặt hàng mà không có các cuộc gọi trùng lặp tới animalName.Length
.
Bộ tương đương của các cuộc gọi phương thức mở rộng LINQ đạt được những gì từ khóa "cho" ở đây?
FYI, đặc điểm kỹ thuật C# 3.0 giải thích mọi quy tắc dịch đọc hiểu trong chi tiết đầy đủ. –
và đối với những người tìm thấy spec nặng đi, C# trong Depth của Jon Skeet cũng bao gồm nó ;-p –
Tôi thích nó khi tôi tất cả như "tự hỏi làm thế nào' từ khóa 'bản đồ để mở rộng phương pháp ... Tôi sẽ google nó nhưng tôi nghi ngờ tìm kiếm của tôi sẽ tìm thấy bất cứ điều gì nhưng rác ... SO FTW! " – Will