zoukankan      html  css  js  c++  java
  • Code First研究学习2_基本的错误及解决方法

     使用Code First时总有很多的问题出现,以下列举了一些基本的错误及解决方法!

    1、当用Enable-Migrations启动数据库迁移后,如果再继续输入Enable-Migrations命令,则会出现如下的结果!解决方案就是输入Enable-Migrations -Force命令,覆盖现在所有的迁移配置!

    a) 

    2、当启动数据库迁移的时候,出现如下提示时 如下图a)检查如果上下文的目标一个现有的数据库……,代码首先迁移项目CodeFirstDemo启用。】你会发现生成的Migrations文件夹下只有一个文件,少了一个InitialCreate文件,如下图b),那么你需要做的就是将config文件夹里面的数据库名称改一下,重新生成一个新的数据库,那此时再运行Enable-Migrations,则会生成正常的Migrations文件夹了[如下图c]

    a) 

     

    b) 

     

    c) 

    3、当用code first生成Model层之后,就直接用Enable-Migrations命令进行数据库迁移,则会出现如下的错误:如图a) ,虽然没成功但是项目里面也同样生成了一个Migrations文件夹,不同的是里面少了一个InitialCreate文件,所以这也是不对的。解决方法是改配置文件里面的连接字符串中的数据库名称,并重新创建一个对应的新的数据库,则就可以了:如下图 c)

    a) 

     

    b) 

     

    c) 

    4、当出现上面图b)的情况时[还没有创建数据库就直接运行Enable-Migrations命令,产生的文件夹Migrations],此时如果你直接运行创建数据库,则会出现如下的错误 如下图a)[错误的意思是将生成文件夹Migrations下面的Configuration中的AutomaticMigrationsEnabled = false改为AutomaticMigrationsEnabled = true,启动自动迁移],如下图b),此时只需要将此文件夹删除再重新运行就可以创建数据库!

    a) 

     

    b) 

    5、当启动数据库迁移成功后,我们就Student表里面增加一个字段Age,如下图a)为增加前的效果;当输入Add-Migration  AddAge[或者Add-Migration  AddStudentAge]命令,则向Student表里面增加成功,注意此时数据库中还不存在);增加成功后Migrations文件夹下面会多出一个201404140256459_addAge.cs ,如下图b),如果要在数据库中看到增加的字段,必须使用Updata-database更新到数据库,如下图c)

    a) 

     

    b) 

     

    c) 

    6、如果要删除表中某个字段,现在Model层对应表中删除此字段,然后输入Updata-database,如果出现如下的错误,则使用Updata-database -Force则可以删除指定字段了!

    a) 

     

  • 相关阅读:
    每秒处理请求数和并发的关系
    oracle查看表空间及大小
    Oracle 备份还原
    ABOUT BENJAMIN HARDY, PHD
    ServiceActivationException when auto-starting WCF services with AutofacServiceHostFactory
    Welcome Enterprise Skills Initiative
    How to quickly delete all html objects in Excel?
    How does SQLParameter prevent SQL Injection?
    Is it necessary to add a @ in front of an SqlParameter name?
    VS Code Python 全新发布
  • 原文地址:https://www.cnblogs.com/pfwbloghome/p/3666810.html
Copyright © 2011-2022 走看看