Bất kỳ ai biết cách viết một câu lệnh LINQ to SQL để trả về mọi hàng thứ n từ một bảng? Tôi cần lấy tiêu đề của mục ở đầu mỗi trang trong lưới dữ liệu được phân trang lại để quét nhanh người dùng. Vì vậy, nếu tôi muốn kỷ lục đầu tiên, sau đó mỗi người thứ 3 sau đó, từ những tên sau đây:LINQ to SQL Mỗi hàng thứ N từ bảng
Amy, Eric, Jason, Joe, John, Josh, Maribel, Paul, Steve, Tom
Tôi sẽ nhận được Amy, Joe, Maribel và Tom.
Tôi nghi ngờ điều này có thể được thực hiện ... Các câu lệnh LINQ to SQL đã gọi hàm SQL ROW_NUMBER() cùng với phân loại và phân trang. Tôi chỉ không biết cách lấy lại mọi thứ thứ n. Câu lệnh SQL sẽ có dạng như WHERE ROW_NUMBER MOD 3 = 0
, nhưng tôi không biết câu lệnh LINQ để sử dụng để lấy đúng SQL.
Tôi không biết nếu điều này có thể được thực hiện với LINQ to SQL tạo sql – hunter
Có thực sự (Không, REALLY) dường như không phải là một cách để đi đến giải pháp cơ bản của câu trả lời được chấp nhận bằng cách sử dụng LINQ to SQL tinh khiết. Tôi đã sử dụng một vài lựa chọn thay thế. 1) Tạo chế độ xem mô tả bảng gốc cộng với số hàng bằng cách sử dụng sắp xếp mong muốn, sau đó sử dụng LINQ to SQL để truy vấn chế độ xem nơi số hàng là số không cho n trong "lấy mọi hàng n". 2) Sử dụng câu trả lời được chấp nhận và ExecuteQuery. Tôi thích giải pháp đầu tiên nếu tôi biết loại mod trước phải luôn giống nhau. –