0
我有一個EF 4模型,我正在使用自我跟蹤實體。在這個模型中有一個叫做組織的實體。每個組織可以有許多地點(地址)。如果我嘗試選擇一個位置(這樣我就可以將其刪除),即:有多個兒童實體的開放數據讀取器的Erorr
var location = _container.Locations.FirstOrDefault(l => l.Id == id);
我得到一個erorr,已經有開放的,所以我不能打開另一個數據讀取器。如果我做以下操作:
var location = _container.Locations.Include("Organisation").FirstOrDefault(l => l.Id == id);
然後它都可以正常工作。
使用Intellitrace我可以看到,失敗的查詢它執行一個ADO命令來獲取位置,然後執行另一個命令來獲取位置和組織。
這是一個錯誤還是我需要爲自我跟蹤實體做不同的事情?
乾杯
我已經啓用了MARS。我只是使用一個單一的LINQ查詢 - 底層的實現正在做第二個SQL查詢,所以我仍然認爲這是一個錯誤。儘管我有一個簡單的解決方法,所以我沒有打擾。 – Jonesie