• ASP.NET Code First Update-Database


    问题描述:

    复制了一个模块化的MVC5的项目,模块化的解释是说不同功能的模块分开来放的。

    明确每个模块都是做什么工作的。

    首先最基本的,就是根据Apps.Models模块来创建数据库了。

    做法是卸载Apps.Models以外的7个模块,然后执行命令Update-Database,但是会报错,具体的错误忘记了,反正就是新复制的没有编译过,所以会缺少dll文件导致的。

    那正确的步骤是:

    复制出来的新项目,第一步需要生成一次,然后卸载除了Apps.Models之外的7个模块,然后有个地方需要选择下

    就是这个默认项目,因为其它的已经被卸载了,默认第一次会显示第一个为默认项目,所以生成的时候会报错The EntityFramework package is not installed on project ''

    那参照Stackoverflow上的解决方案。http://stackoverflow.com/questions/11923077/the-entityframework-package-is-not-installed-on-project

    最后快快乐乐生成了数据库啦。

    随着开发工作的继续进行,突然发现,我寄几创建的主键有问题,因为在底层模板认识的主键只能是Id,所以说我的ID就需要修改了,改完model就得涉及重新生成数据库,这家伙直接给我报错,

    Multiple identity columns specified for table 'FIX_OrderModel'. Only one identity column per table is allowed.

    说一个表只能有一个主键,这个我当然知道啦。

    这时,需要先告诉程序,去添加一个合并(如果有问题,就加个参数 -Force)

    Add-Migration Initial -Force

    然后再执行一次

    Update-Database

    问题解决,如果还是有报错,那么可能会有警告,按照警告的提示,继续操作即可。

  • 相关阅读:
    css小技巧: select的css控制
    js中不存在exit函数,程序的运行中断停止,可使用return
    转载: WebCore渲染之一:基础
    转载: WEB架构师成长系列索引
    js:<form></form>中有<a>按钮时不能跳转?
    小心得:前台与后台的数据传递
    php session和cookie使用说明
    css 字体使用
    转载: PHP引用(&)使用详解
    三层架构下的增删改查 荣
  • 原文地址:https://www.cnblogs.com/Rexcnblog/p/6519579.html
Copyright © 2020-2023  润新知