[問題] asp.net MVC

作者: BigLoser (大魯蛇)   2014-09-11 11:16:16
最近在看MVC
如果model層使用Entity framework
那要如何開一個連接但對資料庫做兩次查詢呢
看了一下msdn的範例
感覺好像是一個select 就會對資料庫連接關閉一次
可以給點方向嗎?
作者: ssccg (23)   2014-09-11 12:55:00
用Entity framework就不要去管connection什麼時候開關的而且基本上底層的Data Provider都有做connection pool連接字串沒變的話不用去想什麼開關問題
作者: alog (A肉哥)   2014-09-11 15:28:00
就去測試跟驗證沒有數據是沒辦法認定效率非常差的舉個例子,像以前大家都認為 Java 還是動態語言在解決某種問題的時候效率非常差,而且都拿C語言比較事實上在某種狀況下比C/C++還快請不要用自己的思考去先入為主,建議多做實際測試像Javascript v8的RegExp就比C跟golang的RegExp庫還快很多這沒測試過還真不曉得說,原來技術進步這麼快
作者: ssccg (23)   2014-09-11 16:23:00
http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx在同樣的connection string下,conn.Open()是從pool取連線conn.Close()是把連線放回pool,不是真的開關只有pool沒有已開啟且可使用的連線時才會開新的
作者: chatnoir (對不起)   2014-09-13 22:54:00
EF在selct基本上是沒問題的,比較麻煩是update&insert
作者: winsummer (winsummer)   2014-09-27 13:09:00
你可以用Dependency Injectionnuget上有很多 injection/IoC 容器去幫你管理生命週期DbContext 通常會跟http request 同生共死

Links booklink

Contact Us: admin [ a t ] ucptt.com