在MVC开发中,习惯于使用EF作为数据库操作,相对于传统的Ado.Net的数据库操作方式,EF大大的节省了我们手写SQL语句的时间,即便是传统的使用代码生成的方式。EF操作数据库目前分为两种大的方式。

  1. DataFirst

    顾名思义Data就是说数据,也就是数据先行。就是我们开始学习编程的时候,先在Word中设计好数据表,然后再在数据库中建好相应的表信息,在EF中只要新建DbContext,连接、更新对应的数据表。

  2. CodeFirst

    顾名思义Code就是代码,也就是现有代码,再有真实数据表。这种方式需要我们将一个个的数据表在我们的项目中拆分为一个个对象。


今天我们来学习下通过Nuget命令来CodeFirst方式的数据表。

  • 首先,在开发工具VS中找到Nuget工具并打开它
  • 选中相应的项目,如我的解决方案中Zeor.MVCDemo.Persistence项目是对应的数据表项目,所以我们选中它,如下图。
  • 第一次创建数据库,我们执行如下三条命令。
    1.Enable-Migrations -EnableAutomaticMigrations
    2.Add-Migration InitialCreate
    3.Update-Database -Verbose

说明,第一条命令Enable-Migrations -EnableAutomaticMigrations,我们只有第一次初始化数据库的时候才需要执行,后面更新表结构或者新增、删除表的时候都不需要执行这条命令,直接执行下面两条命令即可。对于命令二Add-Migration InitialCreate,Add-Migration后的AdInitialCreate 不是固定的,这个只是对当前更新的一个说明,你可以取设为1,2都可以。

如果我们的数据库连接配置正确,当我们按照正确的步骤执行完毕以后,对应的我们就可以在数据库中看到EF已经为我们建好了我们所需的数据库!

EFCodeFirst使用Nuget更新数据库的更多相关文章

  1. EF CodeFirst使用Nuget更新数据库

    常用命令: 1.开启迁移 Enable-Migrations -EnableAutomaticMigrations 2.添加一条迁移记录 Add-Migration AddMigration001 3 ...

  2. 基于现有数据库的Code First模式迁移更新数据库

    本文讨论的内容是基于EF4.1版本.文中谈论的现有的数据库不是由EF创建.本文假定你已经对Code First迁移有一定的了解,如果不了解Code First迁移更新数据库可以查看 文章涉及的主题如下 ...

  3. 转载Code First Migrations更新数据库架构的具体步骤

    [转载] Code First Migrations更新数据库结构的具体步骤 我对 CodeFirst 的理解,与之对应的有 ModelFirst与  DatabaseFirst ,三者各有千秋,依项 ...

  4. 使用Code first 进行更新数据库结构(数据迁移)

    CodeFirst 背景  code first起初当修改model后,要持久化至数据库中时,总要把原数据库给删除掉再创建(DropCreateDatabaseIfModelChanges),此时就会 ...

  5. EntityFrameworkCore使用Migrations自动更新数据库

    EntityFrameworkCore使用Migrations自动更新数据库 系统环境:Win10 IDE:VS2017 RC4 .netcore版本:1.1 一.新建ASP.NET Core Web ...

  6. ABP入门教程7 - 基础设施层更新数据库

    点这里进入ABP入门教程目录 设置数据库 在基础设施层(即JD.CRS.EntityFrameworkCore)打开数据库环境设置 JD.CRS.EntityFrameworkCore/EntityF ...

  7. 3.使用 Code First 迁移更新数据库

    1.更新 SeedData 类,使它提供新列的值. 示例更改如下所示,但可能需要对每个 new Movie 块做出此更改. context.Movie.AddRange( new Movie { Ti ...

  8. Code First 下自动更新数据库结构(Automatic Migrations)

    示例 Web.config <?xml version="1.0" encoding="utf-8"?> <configuration> ...

  9. Entity Framework 6 Code First的简单使用和更新数据库结构

    一.安装Entity Framework 6 在项目中右击选择“管理NuGet程序包",联机搜索Entity Framework,点击安装 二.配置数据库连接 在App.config中加入数 ...

随机推荐

  1. Ubuntu下sh *.sh使用==操作符执行报错

    ----<鸟哥的Linux私房菜--基础篇>学习笔记 ubuntu默认的sh是连接到dash,而我们写shell脚本时使用的时bash.bash和dash在一些方面是不兼容的.因此执行同一 ...

  2. New Concept English three(16)

    35w/m 43 Mary and her husband Dimitri lived in the tiny village of Perachora in southern Greece. One ...

  3. PostgreSQL统计信息挖掘

    PG提供了丰富的统计信息,但是没有将这些统计信息使用的简单查询搞成存储过程,需要我们自己根据需要灵活的去挖掘,最近做了数据库监控,用了一些简单的东西,于是想往深了挖一下. 首先看看系统表和视图,他们都 ...

  4. vue-parcel打包入门

    what 快速,零配置的 Web 应用程序打包器 why 快捷,配置比较少 使用 Parcel 打包的 vue HelloWorld 应用.GitHub 地址: https://github.com/ ...

  5. ubuntu16 sogou install

    1,下载搜狗deb文件(ubuntu16不要参考搜狗旧的安装文档): http://pinyin.sogou.com/linux/ 2,双击sogoupinyin_2.1.0.0086_amd64.d ...

  6. [AirFlow]AirFlow使用指南四 DAG Operator Task

    1. DAG 在Airflow中,DAG或有向无环图是你运行所有任务的集合,以某种组织方式来反映所有任务之间的关系和依赖. 例如,一个简单的DAG可以包括三个任务:A,B和C.可以说A必须在B运行之前 ...

  7. How to choose the number oftopics/partitions in a Kafka cluster?

    How to choose the number oftopics/partitions in a Kafka cluster? 如何为一个kafka集群选择topics/partitions的数量? ...

  8. RxJava 1.x 笔记:组合型操作符

    最近去检查眼睛,发现度数又涨了,唉,各位猿多注意保护自己的眼睛吧! 前面学了 RxJava 的三种关键操作符: 创建型操作符 过滤型操作符 变换型操作符 读完本文你将了解第四种(组合型操作符): 组合 ...

  9. runtime 知识点

    demo https://github.com/ZOYOOPlus/runtime2 // //  ViewController.m //  runtime //  Copyright © 2017年 ...

  10. Java中高级面试题整理

    一.基础知识: 1)集合类:List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList:HashSet,TreeSet): 2)HashMap的底层实现,之后会问Co ...