[问题] 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