社区
.NET技术前瞻
帖子详情
求code first 首次读取数据库 性能优化
hoken2020856
2011-11-17 03:07:41
项目利用微软的code first技术。EF。CS架构
随着数据库中表数量的增多,发现首次连接并读取数据的速度越来越慢。本来就是读取个用户数据并登陆而已。
通过观察发现在读取等待的过程中,程序内存增加了几M,肯定是EF把好多不相关的内容读到内存里了。
请问有什么办法改变这种行为吗?
...全文
181
13
打赏
收藏
求code first 首次读取数据库 性能优化
项目利用微软的code first技术。EF。CS架构 随着数据库中表数量的增多,发现首次连接并读取数据的速度越来越慢。本来就是读取个用户数据并登陆而已。 通过观察发现在读取等待的过程中,程序内存增加了几M,肯定是EF把好多不相关的内容读到内存里了。 请问有什么办法改变这种行为吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
anzhiqiang_touzi
2012-04-10
打赏
举报
回复
是缓存问题,
你把数据库的信息都缓存在内存里了,能不卡吗
IT-Style
2012-04-07
打赏
举报
回复
如果要性能的话,还是用原生的ADO.NET啊,Entity FrameWork虽然提高了开发效率以及可维护性!
anzhiqiang_touzi
2012-04-06
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
就算不用ef, 访问数据库的时候,内存都会增加的啊.
[/Quote]
hoken2020856
2012-03-27
打赏
举报
回复
请问具体怎么做呢?我这个工程里没有edm文件啊?
[Quote=引用 9 楼 tianma4872 的回复:]
引用 7 楼 hoken2020856 的回复:
请问如何看EF的版本呢?
另外,我的实体类确实用的poco,而且我把能用延迟加载的地方都用了,比贪婪加载快了很多。但是对于第一次连接数据库根本没有效果。弱弱地问一句:poco是神马东西?这项目我刚接手,以前从没用过EF
引用 5 楼 taomanman 的回复:
Entity Framework用的不好会出现内存泄漏的问题。
不知……
[/Quote]
saber_mm
2012-02-12
打赏
举报
回复
[Quote=引用 7 楼 hoken2020856 的回复:]
请问如何看EF的版本呢?
另外,我的实体类确实用的poco,而且我把能用延迟加载的地方都用了,比贪婪加载快了很多。但是对于第一次连接数据库根本没有效果。弱弱地问一句:poco是神马东西?这项目我刚接手,以前从没用过EF
引用 5 楼 taomanman 的回复:
Entity Framework用的不好会出现内存泄漏的问题。
不知道你用的Entity Framework的版本是多少?……
[/Quote]
如果是第一次连接数据慢的话,有可能是entityframework在生产视图,这个过程比较慢,你可以用NGEN对edm事先生产视图,这样可以提高第一次程序的启动速度
hxwangcong
2012-01-08
打赏
举报
回复
仅将相关的一些表放在一个实体模型中,一个数据库可以生成多个实体模型
hoken2020856
2011-11-18
打赏
举报
回复
请问如何看EF的版本呢?
另外,我的实体类确实用的poco,而且我把能用延迟加载的地方都用了,比贪婪加载快了很多。但是对于第一次连接数据库根本没有效果。弱弱地问一句:poco是神马东西?这项目我刚接手,以前从没用过EF
[Quote=引用 5 楼 taomanman 的回复:]
Entity Framework用的不好会出现内存泄漏的问题。
不知道你用的Entity Framework的版本是多少?
如果是4.0的话, 没有用POCO 了
[/Quote]
暖枫无敌
2011-11-17
打赏
举报
回复
贪婪加载和延迟加载
http://www.cnblogs.com/haogj/archive/2011/05/07/2039620.html
暖枫无敌
2011-11-17
打赏
举报
回复
Entity Framework用的不好会出现内存泄漏的问题。
不知道你用的Entity Framework的版本是多少?
如果是4.0的话, 没有用POCO 了
kkbac
2011-11-17
打赏
举报
回复
就算不用ef, 访问数据库的时候,内存都会增加的啊.
hoken2020856
2011-11-17
打赏
举报
回复
您觉着我转哪合适啊?
[Quote=引用 1 楼 dawugui 的回复:]
这个貌似不是sql server的内容.请转版.
[/Quote]
--小F--
2011-11-17
打赏
举报
回复
这个比较新颖。。帮顶。
dawugui
2011-11-17
打赏
举报
回复
这个貌似不是sql server的内容.请转版.
EFTest.rar
C#语言NET 4.0环境下,使用EF框架,
code
first方式
读取
SQLITE
数据库
。实现对
数据库
的增,删,查,改的最基本的操作。
dbschemareader:将
数据库
元数据(从SqlServerOracleMySqlSQLitePostgreSqlDB2等)
读取
到一个简单模型中
数据库
模式
读取
器 .Net 2.0 DbProviderFactories上的简单跨
数据库
外观,用于
读取
数据库
元数据。 可以将任何ADO提供程序(SqlServer,SqlServer CE 4,MySQL,SQLite,System.Data.OracleClient,ODP,Devart,PostgreSql,DB2等)
读取
到单个标准模型中。 对于.net Core,我们支持SqlServer,SqlServer CE 4,SQLite,PostgreSql,MySQL和Oracle(即使.net Core中尚未提供
数据库
客户端,我们也已准备就绪)。 或 Nuget:安装软件包DatabaseSchemaReader 从大多数ADO提供程序
读取
的
数据库
架构 简单的.net代码生成: 为表,NHibernate或EF
Code
First映射文件生成POCO类 生成简单的ADO
C#/.NET
Code
First
读取
数据库
异常
异常描述很清楚,问题出在,使用
Code
First模式,在调试生成
数据库
之后,一旦对Models进行了修改,那么就会报这个异常,提示当前Model与
数据库
中对应的关系不一致。解决方案: 删除
数据库
,使用
Code
First默认自动创建新的
数据库
。...
数据库
性能优化
详解
出处: https://www.cnblogs.com/easypass/archive/2010/12/ 08/1900127.html 1.
数据库
访问优化法则 要正确的优化SQL,我们需要快速定位能性的瓶颈点,也就是说快速找到我们SQL主要的开销在哪里?而大多数情况性能最慢的设备会是瓶颈点,如下载时网络速度可能会是瓶颈点,本地复制
关于配置文件配置连接
数据库
和
code
first将实体类映射到
数据库
中
首先在appsettings.json文件中填写连接信息。到Program.cs中注册并使用。
.NET技术前瞻
13,347
社区成员
5,388
社区内容
发帖
与我相关
我的任务
.NET技术前瞻
.NET技术 .NET技术前瞻
复制链接
扫一扫
分享
社区描述
.NET技术 .NET技术前瞻
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章