Tôi muốn tìm nạp tất cả các bản ghi từ ngày cụ thể, bất kể thời gian nào được liên kết với những bản ghi đó. Cho đến nay tôi có phương pháp như thế này:Tìm nạp bản ghi theo ngày chỉ với so sánh từng phần bằng cách sử dụng nhibernate
public IQueryable<Record> QueryByDay(DateTime day)
{
DateTime from = day.Date;
DateTime to = day.Date.AddDays(1);
return repository.Table
.Where(t => t.MyDate >= from && t.MyDate < to);
}
Nhưng trong LINQ-to-đối tượng chúng ta có thể làm (giả sử bảng tại là một số bộ sưu tập):
public IEnumerable<Record> QueryByDay(DateTime day)
{
return repository.Table
.Where(t => t.MyDate.Date == day.Date);
}
Mà rõ ràng là dễ đọc hơn và cảm thấy sạch sẽ hơn . Tôi đã tự hỏi nếu có cách nào tốt hơn để viết phương pháp đầu tiên bằng cách sử dụng lưu trữ cơ sở dữ liệu và nhibernate?
Tôi tin rằng biểu mẫu bạn sử dụng cho L2O hoạt động tốt với NH. –
@Diego Mijelshon Bạn có thể cho tôi biết verison NHibernate nào bạn đang sử dụng mà nó hoạt động không? Tại dự án tôi đang làm việc tại chúng tôi đang sử dụng v. 2.1 và điều này là ném NHibernate.QueryException. – 0lukasz0
2.1 là 3 tuổi và không được hỗ trợ. 3.3 là bản phát hành ổn định hiện tại. –