2012-06-22 86 views

回答

2

這將不會保持您的連接打開。完成後處理你的上下文。調用.ToList()強制執行當時的查詢因此,除了上下文將管理連接的生命週期,所以只需在調用.ToList()後在控制器中完成處理,就可以同時查詢這兩個查詢

+0

I使用新項目做了測試,創建了edmx並編寫了控制器代碼,儘可能簡單(var db = new ictwebEntities()) var query = from x in db.emails 其中x.site = =「acquatica」 select x; return View(query.ToList()); }但問題仍然存在。 – Rodney

+0

但是,一旦你調用ToList(),你的連接就不再用在你的視圖中。除非你正在做別的事情,否則不可能。爲什麼你關心它什麼時候關閉?只要連接池確定連接,連接就可以保持從.net連接池打開。您的下一個請求可以輕鬆使用這個相同的連接打開一個連接非常昂貴,所以如果有人想使用它,它會保持打開狀態。使用.net連接池的一些簡要信息:http://stackoverflow.com/questions/8662409/mysql-net-connection-pool-connection-open-very-slow –