MVC3实体连接字符串消失

时间:2012-10-26 20:10:30

标签: asp.net-mvc entity-framework web-config connection-string

我目前的项目遇到了非常令人沮丧的问题。它不断失去实体模型的连接字符串绑定。

我在不同的区域有不同数据库的多个模型,没有任何问题。突然,现在每当我尝试从数据库更新时,我都会得到连接字符串设置提示。我选择它用密码将它添加到Web.config但它再也没有在那里拿起它。它们都仍然在网络配置中,但它只是看不到它们。

如果我从配置文件中删除所有连接字符串,它将在那里写入新的连接字符串。然后当我尝试设置存储过程/函数导入时,我仍然在下面的框中得到语句:

No database connection has been configured for this model.

我尝试过重建项目并从头开始重新创建模型,这种方法有一段时间了。当我尝试将项目置于Perforce源代码控制之下时,它最终会被重新损坏。连接字符串消失了。它也会影响我的所有模型。

我也使用EF 4.x DbContext Generator来创建上下文文件。他们工作正常。我也能够运行应用程序,它可以很好地连接数据库并返回数据。没问题。我只是无法从数据库更新实体复杂类型或导入任何更多的存储过程。

更奇怪的是,我从另一个目录中打开了一个破损的项目,然后打开了一个未损坏的副本,它立刻也被打破了。传染性的!

关于在哪里查看为什么会发生这种情况的任何想法?还有其他人有这个问题吗?

1 个答案:

答案 0 :(得分:0)

我似乎找到了问题的来源。

我的web.config中的某个地方似乎有一个不好的值导致了这个问题。这是我找到的工作,并发现了它的配置:

  • 当绑定中断时,我关闭了项目,然后用一个良好的构建中的一个交换了web.config,这个构建错过了几个键,但运行良好,可以绑定。
  • 我重新打开了解决方案和"没有数据库连接......"错误消失了。
  • 然后,当解决方案仍处于打开状态时,我重新将web.config重新交换进来,它仍然有效。

这远非最优,但我可以继续工作,直到我通过做一些比较找出坏值。

一旦确定确切的问题,我会再次对此发表评论。