Asp.net 将实体框架与大型数据库(600个实体)一起使用时内存不足

Asp.net 将实体框架与大型数据库(600个实体)一起使用时内存不足,asp.net,asp.net-mvc,entity-framework,entity-framework-5,Asp.net,Asp.net Mvc,Entity Framework,Entity Framework 5,我将EntityFramework5用于包含600多个表的大型数据库(尚未统计存储过程和视图)。在使用Visual Studio 2012启动并运行了几次之后,在尝试更新Model.EDMX文件(使用右键单击“从数据库更新”)或尝试编译时出现内存不足错误 快速谷歌搜索表示,许多人面临类似的问题,一个论坛中有人建议使用多个EDMX文件来避免这种情况。 (链接) 我的问题是 1) 有没有什么方法可以避免这个错误,并使用大量的表而不会给EF带来麻烦? 2) 实体框架模型是否适合大型企业数据库的ORM?

我将EntityFramework5用于包含600多个表的大型数据库(尚未统计存储过程和视图)。在使用Visual Studio 2012启动并运行了几次之后,在尝试更新Model.EDMX文件(使用右键单击“从数据库更新”)或尝试编译时出现内存不足错误

快速谷歌搜索表示,许多人面临类似的问题,一个论坛中有人建议使用多个EDMX文件来避免这种情况。 (链接)

我的问题是 1) 有没有什么方法可以避免这个错误,并使用大量的表而不会给EF带来麻烦? 2) 实体框架模型是否适合大型企业数据库的ORM?如果没有,有人能给我推荐一个好的吗


提前感谢您回答第一个问题

我发现,更新实体框架似乎并不是在所有情况下都能可靠地工作


您是否尝试过删除模型中的所有对象并再次插入它们?这可能是一个可以接受的解决办法。

我建议花些时间研究nHibernate。就用户界面而言,它不如实体框架对用户友好,但如果您处理大量的表,这应该是一个优势


另外,您知道您不必映射实体模型中的所有表吗?你可以带上你需要的。我假设您不需要所有600个表来完成您的工作。

如果您想要两个问题的答案,您应该将它们分开发布。当升级失败并出现“内存不足”错误时,Visual Studio进程实际是否有可用内存?确保开发机器中有足够的内存。可能只是更新数据库对象需要比添加它们多得多的资源。请参阅下面的答案。在我的开发笔记本电脑上,除了Visual Studio 2012和此示例应用程序之外,我没有运行其他任何东西。任务栏显示没有令人震惊的状态。我们在各种论坛上查看了更多信息,发现如果您想使用EF,在各个部分拆分模型是唯一的解决方案。现在我必须看看如何处理多个实体模型。我尝试过几次删除模型。它工作几次(调试/编译),然后停止。