2014-07-18 53 views
1

我使用EntityFramework 5.0,並安裝了Resharper。EntityFramework:訪問處置的封閉

我有以下代碼:

using (var context = DataObjectFactory.CreateCardholdersContext()) 
{ 
    var cardholdersWithCards = from cardholders in context.CardholderEntities 
           from cards in context.CardholderCardEntities 
           select new 
           { 
            Cardholders = cardholders, 
            Cards = cards 
           }; 

} 

在我的代碼的第二行,我有一個下劃線context下,一個警告access to disposed closure

這是什麼意思,我該如何改變我的代碼?

+0

look [here](http://stackoverflow.com/questions/17620430/access-to-disposed-closure-in-c)或[here](http://stackoverflow.com/questions/19248282/what -does-access-to-dispos-closure-mean-here)或[here](http://stackoverflow.com/questions/14218907/does-this-resharper-fix-for-disposed-closure-warning-make-任何意義)或[這裏](http://stackoverflow.com/questions/21159776/access-to-disposed-closure-mark-methods-as-safe)或[這裏](http://stackoverflow.com/問題/ 13713754/IS-linqifying - 我的代碼價值-訪問-A-的foreach可變IN-A-關閉)。你真的**在發帖之前檢查重複嗎? – Default

+0

@Default是的,我GOOGLE了「實體框架訪問處置閉包」 –

+0

有很多重複此..跳過實體框架在您的搜索,因爲這是不相關的https://www.google.se/search?到+ q =存取+ +設置閉合。即使SO愛幫助別人,你也應該學會在提問之前通過正確地尋找主題來幫助自己。否則,你只是增加了噪音。 – Patrick

回答

1

這就是說在上面的代碼執行之前上下文可能已經被處理,導致錯誤。

您需要發佈更多代碼才能知道原因。

+0

我已更新我的代碼 –

+1

嘗試將ToList()添加到查詢的末尾。這將確保數據在處理上下文之前被完全列舉。 – Beakie

+1

問題是,你的代碼是好的,它只是resharper過於謹慎。這應該解決它。 – Beakie

相關問題