3

我在我的 Web 应用程序中取消实体框架。早些时候一切正常。但后来我从 Sql Server 中删除了数据库。之后,每当我运行应用程序时,都会出现以下异常:

The underlying provider failed on open entity framework  

如果我们从 Sql Server 中删除数据库并再次运行应用程序,是否会再次创建数据库?

4

3 回答 3

3

实体框架将在应用程序启动时重新创建您的数据库,假设如下:

  • 您有权在 SQL 中创建数据库
  • 正确指定了连接字符串(如果它在此之前工作应该没问题)
  • 您正在对数据库使用 CodeFirst 或 ModelFirst 策略(即,如果您从现有数据库生成 EDMX,它不会为您重新创建它)
于 2012-08-03T10:28:33.643 回答
3

您能否显示有关连接字符串的一些详细信息。我基本上想检查您正在使用的身份验证。设置典型身份验证的演示:http: //msdn.microsoft.com/en-us/library/ff649314.aspx

另一种可能性是连接池。尝试显式关闭连接(如果有任何打开的连接)

db.Database.Connection.Close();
于 2012-08-03T10:44:22.180 回答
0

我有一个类似的错误,这是由于连接问题。通常您需要在您的实体 (EDML) 下打开您的 *.EDPS 文件并检查您的连接字符串并确保它具有正确的设置,尤其是您的默认 Oracle 主页。

于 2013-02-08T17:18:50.577 回答