Iqueryable là gì

Bạn đã xem: Sự không giống nhau Giữa Ienumerable và Iqueryable Là Gì, Sự khác biệt Giữa Iqueryable với Ienumerable Là Gì tại Cộng đồng in ấn

31 thg 10, 2008Nirmal và IEnumerable là gì?” href=”https://stackoverflow.com/questions/252785/what-is-the-difference-between-iqueryablet-and-ienumerablet” target=”_blank” rel=”noopener noreferrer”>Trước hết, IQueryable không ngừng mở rộng đồ họa IEnumerable, vì vậy, bất kể điều gì chúng ta có thể làm với 1 IEnumerable “đơn giản”, bạn có thể làm cùng với IQueryable.

Bạn đang xem: Iqueryable là gì

Đang xem: Iqueryable là gì

IEnumerable chỉ có một cách thức GetEnumerator() trả về một Enumerator mà chúng ta có thể gọi cách làm MoveNext() của chính nó để lặp qua một chuỗi T.

IQueryable bao gồm gì IEnumerable ko là nhì thuộc tính đặc biệt của một đối tượng chỉ ra một nhà hỗ trợ truy vấn (ví dụ: nhà hỗ trợ LINQ lớn SQL) và một nhà hỗ trợ khác trỏ đến biểu thức truy tìm vấn thay mặt cho đối tượng người sử dụng IQueryable bên dưới dạng cây cú pháp trừu tượng rất có thể chạy ngang rất có thể chạy được được nhà hỗ trợ truy vấn nhất định hiểu (đối với hầu hết các phần, bạn không thể đưa biểu thức LINQ to SQL mang đến nhà hỗ trợ LINQ đến Thực thể mà không bị ném nước ngoài lệ).

Biểu thức rất có thể chỉ đơn giản và dễ dàng là một biểu thức không thay đổi của chính đối tượng hoặc một cây tinh vi hơn của một tập hợp các toán tử truy vấn vấn với toán hạng. Những phương thức IQueryProvider.Execute() hoặc IQueryProvider.CreateQuery() ở trong nhà cung cấp truy vấn được hotline với một biểu thức được truyền đến nó, với sau đó, một tác dụng truy vấn hoặc một IQueryable khác được trả về.

Xem thêm: Nhận Định Soi Kèo Bóng Đá Đức, 23H00 Ngày 29/6, Nhận Định Soi Kèo Nhà Cái Anh Vs Đức

Sự khác hoàn toàn chính là những toán tử LINQ mang lại IQueryable lấy Expression đối tượng người tiêu dùng thay bởi vì đại biểu, nghĩa là logic truy vấn thiết lập cấu hình mà nó thừa nhận được, ví dụ: bộ chọn vị ngữ hoặc giá trị, sinh hoạt dạng cây biểu thức thay vì ủy nhiệm mang đến phương thức.

IEnumerable cực tốt để làm việc với các chuỗi được lặp trong bộ nhớ, nhưngIQueryable có thể chấp nhận được hết rất nhiều thứ trong bộ nhớ lưu trữ như nguồn dữ liệu từ xa, chẳng hạn như cơ sở tài liệu hoặc dịch vụ web.

Thực hiện nay truy vấn:

Trường hợp thực hiện truy vấn đang được triển khai “đang xử lý” , thông thường toàn bộ những gì được yêu cầu là mã (dưới dạng mã) để thực hiện từng phần của các truy vấn.

Trường hợp triển khai sẽ được triển khai ngoài tiến trình , lô ghích của tầm nã vấn phải được biểu thị trong tài liệu để nhà cung ứng LINQ tất cả thể biến hóa nó thành hiệ tượng thích vừa lòng để thực hiện hết bộ lưu trữ – mặc dầu đó là truy tìm vấn LDAP, SQL hay bất kể điều gì.

Thêm trong:

*
*
*
*

IQueryable cấp tốc hơn IEnumerable nếu chúng ta đang xử trí một lượng dữ liệu mập mạp từ cơ sở tài liệu bởi vì, IQueryable chỉ nhận được dữ liệu quan trọng từ cửa hàng dữ liệu trong số ấy IEnumerable bao gồm được toàn bộ dữ liệu bất kỳ sự quan trọng từ cửa hàng dữ liệu