我正在使用代码优先的C#实体框架技术开发C#桌面应用程序。我需要使用分层架构,上面有这些层。
1.实体层-用于代码优先的数据库创建
2.数据访问层-用于访问数据库和所有与数据库相关的方法
3.业务逻辑层-用于连接接口和数据访问层
4.表示层-用于界面设计
从数据库获取数据时,需要一段时间才能加载。有没有办法解决这个问题...?
我的项目经理教授说,这是因为分层架构……
发布于 2015-04-29 15:28:45
如果对你的模型没有任何概念,就不可能说出为什么数据检索很慢。EF比.NET上的其他对象关系管理框架要慢一些,但它工作得很好。你应该开始分析你的模型。此外,请记住您的模型背后有一个数据库。ORM工具的用户往往会忘记这一点。您可以使用诸如EF Profiler之类的命令来查看要发送到数据库服务器的查询。当在或多或少复杂的模型上使用ORM时,这种工具是必须的。
一个典型的问题是SELECT N+1问题当你获取一个拥有其他实体集合的实体时,这个集合被代理,你开始遍历它,你的子实体一个接一个地延迟加载,发出的查询数量至少和那些子实体一样多。在这种情况下,急切的抓取是关键的解决方案。但是,再说一次,您没有提供细节,所以您必须自己弄清楚问题。问题不在于EF本身,也不在于分层架构。
https://stackoverflow.com/questions/29936551
复制相似问题