1
我有4種不同的模型,我從視圖中的網格中提取信息。此代碼摘錄是我的控制器的索引行動的一部分。每個 模型都有一個存儲庫,partRepository,parts_comboRepository,vendor_partRepository和manufacturer_partRepository,我使用這些存儲庫爲我的連接抓取數據。ASP.Net MVC和存儲庫
var nss_part_combo =
from o in parts_comboRepository.FindAll_Parts_Combos()
join parts in partRepository.FindAll_Parts()
on o.FK_Parts_ID_PARTS equals parts.ID_PARTS into joined_parts
from parts in joined_parts.DefaultIfEmpty()
join vendor_parts in vendor_partRepository.FindAllVendor_Parts()
on o.FK_Vendor_Parts_ID_VENDOR_PARTS equals vendor_parts.ID_VENDOR_PARTS into joined_vendor_parts
from vendor_parts in joined_vendor_parts.DefaultIfEmpty()
join manufacturer_parts in manufacturer_partRepository.FindAllManufacturer_Parts()
on o.FK_Manufacturer_Parts_ID_MANUFACTURER_PARTS equals manufacturer_parts.ID_MANUFACTURER_PARTS into joined_manufacturer_parts
from manufacturer_parts in joined_manufacturer_parts.DefaultIfEmpty()
select new NSS.ViewModel.Part_ComboViewModel
{
...
};
return View(new GridModel(part_combo));
當我運行它時,出現有關具有不同上下文的錯誤。我通過在控制器的頂部聲明一個實體並使用它來代替我的資源庫對象來獲取所有IEnumerables的連接,從而解決了問題。這是一個好方法嗎?我覺得我已經偏離了我應該做的事情,並創建了一個黑客來解決我的問題。解決這個問題最好的做法是什麼?
請參閱http://stackoverflow.com/search?q=objectcontext+lifetime瞭解如何管理ObjectContext生命週期的討論。 – 2010-09-11 05:06:35
謝謝,這是有用的,不知道什麼關鍵字來尋找描述我的問題,但這有幫助。 – mattnss 2010-09-21 00:09:39