EFCore--->> CodeFirst (Vs2019 Core3.0)的简单使用
直接上干货
EFCore--->> CodeFirst (Vs2019 Core3.0)
1: 安装下面3个对应的package(在Nuget控制台或者直接NuGet包查询点击下载,我喜欢下面的命令,B格一些)
Install-Package Microsoft.EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
2:创建实体
namespace WebApplication1.Models
{
    using System.ComponentModel.DataAnnotations;
    public class Person
    {
        [Key]  //将来在数据库对应的表中 就是主键
        public int ID { get; set; }
[MaxLength(30), Required] //。。。
        public string Name { get; set; }
public int? Age { get; set; } //可为空
        public DateTime? Birthday { get; set; }
    }
}
3: 覆写下面两个方法或其中一个方法,及新增俩个实体,并添加到这里
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace WebApplication1.Models
{
    using Microsoft.EntityFrameworkCore;
    public class TestDbContext:DbContext
    {
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            //base.OnConfiguring(optionsBuilder);
            string sqlConnection = "server=XB-201907130929\\ZRFSQLSERVER;uid=sa;pwd=123456;database=TestDbContext";
            optionsBuilder.UseSqlServer(sqlConnection);
        }
protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);
            //modelBuilder.Entity<Person>().HasIndex(u => u.Name).IsUnique(); //是否唯一,看你直接是否需要咯
        }
public DbSet<Person> Person { get; set; }
        public DbSet<Book> Book { get; set; }
    }
}
4:控制台命令:
Add-Migration Init  //其中Init是你的版本名称 ,这个每一次修改都会要求你加上名称
下面update-database init会同步并生成数据库及表; init当做为版本号即可
update-database Init //再一次执行会回到这个数据库的版本包括表的字段和数据
update-database uupdte0 会更新到这个版本,数据库中的表都会更新到这个迁移的版本,包括数据
5:注意点
Add-Migration EditPwdLength // 修改了表或者添加了表
update-database EditPwdLength //加上版本EditPwdLength 会比较保险一些吧
后续会不断的写些自己的小笔记,加油!!!
EFCore--->> CodeFirst (Vs2019 Core3.0)的简单使用的更多相关文章
- What?VS2019创建新项目居然没有.NET Core3.0的模板?Bug?
		
今天是个值得欢喜的日子,因为VS2019在今天正式发布了.作为微软粉,我已经用了一段时间的VS2019 RC版本了.但是,今天有很多小伙伴在我的<ASP.NET Core 3.0 上的gRPC服 ...
 - VS2019没有.net core3.0模板的解决办法
		
今天装好了,net core sdk 3.0之后,打开Visual Studio2019后,新建项目时发现尽然没有.net core3.0的模板. 搜了下其他博主的文章,按照文章里做了如下设置: ...
 - .Net Core 3.0后台使用httpclient请求网络网页和图片_使用Core3.0做一个简单的代理服务器
		
目标:使用.net core最新的3.0版本,借助httpclient和本机的host域名代理,实现网络请求转发和内容获取,最终显示到目标客户端! 背景:本人在core领域是个新手,对core的使用不 ...
 - .Net Core3.0 WebApi 项目框架搭建 一:实现简单的Resful Api
		
.Net Core3.0 WebApi 项目框架搭建:目录 开发环境 Visual Studio 2019.net core 3.1 创建项目 新建.net core web项目,如果没有安装.net ...
 - Asp.Net MVC+BootStrap+EF6.0实现简单的用户角色权限管理
		
这是本人第一次写,写的不好的地方还忘包含.写这个的主要原因是想通过这个来学习下EF的CodeFirst模式,本来也想用AngularJs来玩玩的,但是自己只会普通的绑定,对指令这些不是很熟悉,所以就基 ...
 - 2019年第一天——使用Visual Studio 2019 Preview创建第一个ASP.Net Core3.0的App
		
一.前言: 全文翻译自:https://www.talkingdotnet.com/creating-first-asp-net-core-3-0-app-visual-studio-2019/ Vi ...
 - 使用.net core3.0 正式版创建Winform程序
		
前阵子一直期待.net core3.0正式版本的出来,以为这个版本出来,Winform程序又迎来一次新生了,不过9.23日出来的马上下载更新VS,创建新的.net core Winform项目,发现并 ...
 - 在.net core3.0中使用SignalR实现实时通信
		
最近用.net core3.0重构网站,老大想做个站内信功能,就是有些耗时的后台任务的结果需要推送给用户.一开始我想简单点,客户端每隔1分钟调用一下我的接口,看看是不是有新消息,有的话就告诉用户有新推 ...
 - Core3.0的 安装与坑坑坑!!!
		
Core3的 SDK下载地址是:https://dotnet.microsoft.com/download/dotnet-core/3.0 ! 不要下载preview8!!!,请先下载 previe ...
 
随机推荐
- Flask中的路由、实例化参数和config配置文件
			
Flask中的路由 endpoint 别名不能重复,对应的视图函数,默认是视图函数名.endpoint 才是路由的核心.视图函数与路由的对应关系.可以通过url_for 反向创建url # metho ...
 - python压测工具Locust
			
python压测工具Locust Locust介绍 Locust作为基于Python语言的性能测试框架. 其优点在于他的并发量可以实现单机10倍于LoadRunner和Jmeter工具.他的工作原理为 ...
 - rpm -qa|grep nfs >/dev/null 2>&1作用
			
在使用一些shell命令是,经常会用到rpm -qa|grep nfs >/dev/null 2>&1之类的命令,该命令干嘛用的呢? 其实这个命令就是将rpm -qa|grep n ...
 - 浅析java垃圾回收机制
			
什么是java程序中的垃圾?什么这些垃圾又是怎样被回收的?为什么会被回收?不进行回收又会怎样?这些问题都是我们要在这篇博客中要解决的问题! 大家都知道,在c语言中,作为程序员,必须得考虑到去怎样回收已 ...
 - .Net Core自动化部署系列(三):使用GitLab CI/CD 自动部署Api到Docker
			
之前写过使用Jenkins实现自动化部署,最近正好没事研究了下GitLab的自动化部署,顺便记录一下. 使用GitLab部署我们需要准备两件事,第一个起码你得有个GitLab,自己搭建或者使用官方的都 ...
 - Python3 学习笔记之 类型/运算符
			
类型/运算符: 类型: 整数 字符串 浮点数 布尔类型 类型转换: 检查类型: 算术操作符: 逻辑操作符: 优先级:
 - .Net Core删除ClientApp目录,重新生成报错解决办法
			
因为在老的项目上做修改,需要删除单独的spa目录,就把ClientApp删掉了.但是重新生成报错,在VS2017界面上也没找到在什么地方配置.最后发现在csproj上里面可以去掉spa的配置 < ...
 - gorilla/mux类库解析
			
golang自带的http.SeverMux路由实现简单,本质是一个map[string]Handler,是请求路径与该路径对应的处理函数的映射关系.实现简单功能也比较单一: 不支持正则路由, 这个是 ...
 - Android 横竖屏切换生命周期
			
默认情况下,屏幕会旋转并且会重新走生命周期. 1. 屏幕不旋转 在AndroidManifest文件中的对应Activity中配置android:screenOrientation=”landsc ...
 - 个性化推荐产品功能的设计和B端产品的功能策划方式
			
宜信科技中心财富管理产品部负责人Bob,与大家一起聊聊个性化推荐产品功能的设计和B端产品的功能策划方式. 拓展阅读:回归架构本质,重新理解微服务|专访宜信开发平台(SIA)负责人梁鑫 智慧金融时代,大 ...