Tôi muốn tìm nạp dữ liệu với tải mong muốn bằng cách sử dụng Linq2SQL. Mã này tương tự như:Linq2SQl mong muốn tải với nhiều DataLoadOptions
DataLoadOptions options = new DataLoadOptions();
options.LoadWith<Product>(c => c.ProductCompanies);
options.LoadWith<Product>(c => c.OrderDetails);
db.LoadOptions = options;
IEnumerable<Product> products = db.Products.ToList<Product>();
Tôi kiểm tra nó đã tạo nhiều hơn 1 truy vấn SQL như tôi mong đợi. Trên thực tế nó chỉ làm háo hức tải với sản phẩm và OrderDetails, và ProductCompany được truy vấn từng người một. Tôi có làm gì sai ở đây không? Hoặc nó là một vấn đề Linq2SQL? Chúng ta có cách giải quyết nào không?
Cảm ơn rất nhiều!
Cập nhật: Tôi kiểm tra sql từ SQL Profiler. Tôi thấy cả Leppie và Ian đều đúng. Chúng được giới hạn trong một giao dịch. Nhưng khi tôi đặt nó là tải lười, nó đã mở nhiều kết nối.
Hãy cẩn thận , DataLoadOptions tạo ra một số truy vấn rất không hiệu quả. –
Cảm ơn, Chad! Tôi sẽ trở lại Nhibernate trong dự án tiếp theo của tôi: =) –