我已经在MySQL中构建了一个数据库,并且试图将它与实体框架进行映射,但是当我尝试添加更多内容时,我开始运行到“GenerateSSDLException”在EF上下文中有20个表。使用MySQL的实体框架 - 超时生成模型
类型的异常 'Microsoft.Data.Entity.Design.VisualStudio.ModelWizard.Engine.ModelBuilderEngine + GenerateSSDLException' 试图更新从数据库 发生。 异常消息是:'执行命令定义时发生错误 。详细内容见内部例外 '。
命令执行期间遇到致命错误。
超时已过期。操作完成之前超时的时间或服务器没有响应。
受影响的表没有什么特别之处,它从不是相同的表,它只是在添加了某些(非特定)数量的表之后,如果没有“超时过期“错误。有时只剩下一张桌子,有时候只剩下三张桌子;结果相当不可预测。此外,在错误发生之前可以添加的表的数量的差异向我表明,可能问题在于为了更新包括现有表定义的上下文而生成的查询的大小,以及新的表正在被添加到它。实质上,SQL查询变得太大,并且由于某种原因无法执行。
如果我生成模型EdmGen2它没有任何错误,但生成的EDMX文件不能在Visual Studio中更新,而不会产生上述异常。
很可能这个问题的根源在于Visual Studio中的工具,因为EdmGen2可以正常工作,但是我希望其他人可以提供一些关于如何处理这个非常特殊问题的建议,因为它看起来像I'm not the only person experiencing it。
一位同事提出的一个建议是维护两个独立的EBMX文件和一些表格交叉,但在我看来这看起来像一个相当丑陋的修复。我想这是我尝试使用“新技术”所得到的结果。 :(
我不愿意upvote任何这些答案,因为他们都没有真正的目标的实际问题......蜥蜴的答案是唯一一个类似的答案,但仍然不是那里... – 2009-11-23 21:34:19
对不起,我不能更多的帮助,但这就是我会做的:p。如果你感到慷慨的话,会喜欢upvote!大声笑 – Lizard 2009-11-24 16:11:19
弥敦道:看到我的答案在下面。接受的答案对于这个问题是不正确的。 – 2012-03-08 03:07:02