美文网首页
使用EntityFramework Core 数据库迁移

使用EntityFramework Core 数据库迁移

作者: DF_Sky | 来源:发表于2019-06-29 00:39 被阅读0次

    创建一个 asp.net core Mvc 或者console项目
    我以 asp.net core Mvc 举例
    新建一个Models文件夹 来存放Model 这里我们只是示例 所以简单点就好
    新建一个User类

    public class User
        {
            public int Id { get; set; }
            public string UserName { get; set; }
            public string Password { get; set; }
            public string Email { get; set; }
            public string Phone { get; set; }
        }
    

    再新建一个

       public class DFContext : DbContext
        {
            public DFContext (DbContextOptions<DFContext > options)
                : base(options)
            {
            }
            public DbSet<User> Users { get; set; }
        }
    

    缺少引用 鼠标移入错误行 然后会智能提示你引入那些dll 你点引入就完事了
    继续

            public void ConfigureServices(IServiceCollection services)
            {
                services.Configure<CookiePolicyOptions>(options =>
                {
                    // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                    options.CheckConsentNeeded = context => true;
                    options.MinimumSameSitePolicy = SameSiteMode.None;
                });
    
    加上下面这句
                services.AddDbContext<DFContext>(options =>
                {
                    options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
                });
    //end
                services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
            }
    

    就那个AddDbContext 加上

    继续 appsettings.json 加上下面这个 因为上面那边要获取数据库连接

    "ConnectionStrings": {
        "DefaultConnection": "Data Source=LAPTOP-9JRJRNJ4\\SQLEXPRESS;Initial Catalog=Eosa;Integrated Security=True"
      }
    
    image.png
    image.png

    会打开一个控制台
    输入 dotnet ef migrations add InitialCreate 回车
    没看到红字 就表示成功 出现红字自己百度错误 我也不知道怎么解决
    回到项目
    你会看到


    image.png

    多了个文件夹
    继续回到 刚刚那个控制台界面 输入 dotnet ef database update 回车
    没看到红字就是成功了 出现红字自己百度错误 我也不知道怎么解决
    然后去看下数据库 看看是不是成功了

    以后更新实体类 怎么更新数据库呢?
    比如加了一个实体类 或者修改了某个字段

    image.png

    没出现红字就是成功了

    再输入update-database 回车
    没红字就是成功了 完事
    以后更新都这样操作就行了

    详细 自己去看官方文档

    相关文章

      网友评论

          本文标题:使用EntityFramework Core 数据库迁移

          本文链接:https://www.haomeiwen.com/subject/vstucctx.html