System.Data.Entity.Infrastructure.UnintentionalCodeFirstException未被用户代码处理HResult = -2146233079

Muh*_*sir 3 c# entity-framework

我正在使用Entityframework和使用数据库的存储库模式.当我尝试连接到数据库时,我收到以下错误

System.Data.Entity.Infrastructure.UnintentionalCodeFirstException未被用户代码处理HResult = -2146233079

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    throw new UnintentionalCodeFirstException();
}
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

Fer*_*rri 5

如果您尝试连接到现有数据库但EF尝试首先执行代码,则应遵循此简单步骤来防止此错误.

  1. 删除web.config中的当前连接字符串
  2. 找到您的.edmx文件,然后双击下一张图片中的显示方式. 在此输入图像描述
  3. 如果在单击"从数据库更新模型..."后看到此屏幕 在此输入图像描述 确保标记为"将App.Config中的连接设置保存为"
  4. 之后,如果您的.edmx文件位于类库中,则应将连接字符串复制到主项目中.

另一方面,如果您没有看到第4步的屏幕,请确保已删除项目的所有连接字符串.