Tôi có một bảng gọi là Quotes in linq-to-sql chứa 2 cột: tác giả và trích dẫn. Làm thế nào để bạn chọn cả hai cột của một hàng ngẫu nhiên?linq chọn một hàng ngẫu nhiên
13
A
Trả lời
37
Random rand = new Random();
int toSkip = rand.Next(0, context.Quotes.Count);
context.Quotes.Skip(toSkip).Take(1).First();
1
Dưới đây là một cách để đạt được những gì bạn muốn làm:
var quotes = from q in dataContext.Quotes select q;
int count = quotes.Count();
int index = new Random().Next(count);
var randomQuote = quotes.Skip(index).FirstOrDefault();
5
Nếu bạn đang làm LINQ-to-Đối tượng và không cần điều này để làm việc trên SQL, bạn có thể sử dụng ElementAt()
thay vì tiết hơn Skip(toSkip).Take(1).First()
:
var rndGen = new Random(); // do this only once in your app/class/IoC container
int random = rndGen.Next(0, context.Quotes.Count);
context.Quotes.ElementAt(random);
3
tôi đã làm nó một cái gì đó như thế này:
list.ElementAt(rand.Next(list.Count());
Tôi bị kẹt một loạt các hoạt động ngẫu nhiên, bao gồm chọn và trộn, làm phương thức mở rộng. Điều này làm cho chúng có sẵn giống như tất cả các phương pháp mở rộng bộ sưu tập khác.
Bạn có thể xem mã của mình trong bài viết Extending LINQ with Random Operations.
0
1 Đầu tiên tạo ra một lớp với tài sản Rend
public class tbl_EmpJobDetailsEntity
{
public int JpId { get; set; }
public int rend
{
get
{
Random rnd = new Random();
return rnd.Next(1, 100);
}
}
}
2 LINQ truy vấn
var rendomise = (from v in db.tbl_EmpJobDetails
select new tbl_EmpJobDetailsEntity
{
JpId=v.JpId
}).OrderBy(o=>o.rend);
Các vấn đề liên quan
- 1. Hàng ngẫu nhiên từ LINQ đến Sql
- 2. Chọn hàng ngẫu nhiên từ bảng mysql
- 3. ngẫu nhiên lựa chọn hàng trong R
- 4. chọn hàng n ngẫu nhiên qua linq2sql
- 5. PHP MySQL chọn hàng ngẫu nhiên
- 6. Chọn hàng ngẫu nhiên từ một bảng sqlite
- 7. Lựa chọn hàng ngẫu nhiên trong Pandas dataframe
- 8. Chọn Hàng Ngẫu nhiên từ SQL Sử dụng PHP
- 9. MySQL chọn hàng ngẫu nhiên - rand() hiệu suất
- 10. Chọn hàng ngẫu nhiên từ một bảng PostgreSQL với xác suất hàng trọng
- 11. MySQL: Cách truy xuất hàng ngẫu nhiên hoặc nhiều hàng ngẫu nhiên?
- 12. Hàng ngẫu nhiên của Oracle từ bảng
- 13. Chọn các số ngẫu nhiên hiệu quả
- 14. Chọn một mục ngẫu nhiên từ một bảng
- 15. Chọn một phần tử ngẫu nhiên từ một tập hợp
- 16. Cách đặt hàng ngẫu nhiên() trong ORMLite
- 17. Chọn một mục ngẫu nhiên, không biết tổng số mục
- 18. Bảng IE9 có các hàng ngẫu nhiên được bù trừ tại các cột ngẫu nhiên
- 19. Mysql Xóa nhiều hàng ngẫu nhiên khỏi một bảng
- 20. In một hàng ngẫu nhiên từ truy vấn mysql
- 21. Doctrine 2 Chọn ngẫu nhiên một hàng (Offset 0 hoặc 1 indexed)?
- 22. Chọn quả ngẫu nhiên từ MySQL
- 23. chọn tệp ngẫu nhiên từ thư mục
- 24. Truy vấn LINQ tối ưu để có được một bộ sưu tập phụ ngẫu nhiên - Trộn ngẫu nhiên
- 25. Chọn 5 yếu tố ngẫu nhiên
- 26. Chọn giá trị ngẫu nhiên từ một Array
- 27. CSS chọn một màu ngẫu nhiên từ mảng
- 28. Chọn ngẫu nhiên một chuỗi từ strings.xml trong Android
- 29. Chọn một khóa ngẫu nhiên từ mã băm
- 30. Django - Chọn một ảnh ngẫu nhiên từ mỗi Album
gì dòng này làm: int toSkip = rand.Next (0, context.Quotes.Count); ? – frenchie
Nó tạo ra một số là chỉ số của báo giá ngẫu nhiên. Nó nói, chọn một số ngẫu nhiên giữa 0 và số Quotes trong DataContext. –
ah ok! đó là một phương pháp mở rộng trên các loại ngẫu nhiên. – frenchie