AspMVC -EF 使用过程中出现错误及解决

8 篇文章 1 订阅

在.Net 使用EF如果不正确,可能会出现异常错误。一般而言,有可能以下错误场景

1,在程序集“XXX”中未找到迁移配置类型“XXX.Migrations.Configuration”。

这种错误出现在定义的DBContext 类与定义的web.config 数据连接串名称不一致,应将两者保持一致。如下面所示

配置文件:

<add name="MusicStoreEntities" connectionString=" Data Source=.;Initial Catalog=test;User ID=test;Password=test;"

类文件:

 public class MusicStoreEntities : DbContext 
    {
        public DbSet<Album> Albums { get; set; }
        public DbSet<Genre> Genres { get; set; }
    }

2,The project 'XXXX' failed to build. 

有时在Visio studio 中的“程序包管理器控制台”中执行update-database 会出现如下类似错误

The project 'MvcApplication1' failed to build.
工程编译错误

这种情况一般是因为程序自身有明显的编译问题,可编译工程发现具体错误在什么位置。

3,无法将数据库更新为与当前模型匹配,因为存在待定更改并且禁用了自动迁移。将待定模型更改写入基于代码的迁移或启用自动迁移。将 DbMigrationsConfiguration.AutomaticMigrationsEnabled 设置为 true 以启用自动迁移。

这种情况一般是在工程内的Migrations 文件夹中的Configuration.cs 文件没有定义AutomaticMigrationsEnabled属性为true导致。可修改如下

        public Configuration()
        {
            AutomaticMigrationsEnabled = true;
        }

在文件内容显示为AutomaticMigrationsEnabled=true 时,有时也会报这类错误。这往往是因为执行了enable-migrations -force 强制修改了这类文件导致,文件显示信息已与工程实际信息不一致,对Configuration.cs 文件关闭再打开,即可发现AutomaticMigrationsEnabled=false

4,不支持关键字: “XXX”。

这种问题,有可能发生在web.config 的数据库连接配置字符串信息,正确形式可如下所示
connectionString="Data Source=.;Initial Catalog=test;User ID=test;pwd=test" />


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mystonelxj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值