Tôi biết điều này có thể là ý kiến, nhưng tôi đang tìm các phương pháp hay nhất.Tôi có nên trả lại số điện thoại <T> hoặc IQueryable <T> từ DAL của tôi không?
Theo tôi được biết, thực hiện IQueryable<T>
IEnumerable<T>
, vì vậy trong Dal của tôi, Tôi hiện đang có chữ ký phương pháp như sau:
IEnumerable<Product> GetProducts();
IEnumerable<Product> GetProductsByCategory(int cateogoryId);
Product GetProduct(int productId);
Tôi có nên sử dụng IQueryable<T>
đây?
Ưu và nhược điểm của một trong hai cách tiếp cận là gì?
Lưu ý rằng tôi đang lên kế hoạch về việc sử dụng các mẫu Repository vì vậy tôi sẽ có một lớp như vậy:
public class ProductRepository {
DBDataContext db = new DBDataContext(<!-- connection string -->);
public IEnumerable<Product> GetProductsNew(int daysOld) {
return db.GetProducts()
.Where(p => p.AddedDateTime > DateTime.Now.AddDays(-daysOld));
}
}
Tôi có nên thay đổi của tôi IEnumerable<T>
-IQueryable<T>
? Những lợi thế/bất lợi là có một hay khác?
Độc đáo nói. Ngắn gọn, có dấu đầu dòng. – Armstrongest
Ngay trên. Tôi đã luôn luôn gộp IList và IEnumerable vào cùng một nhóm, nhưng tôi thích ý tưởng này tốt hơn. – scottm