ASP.NET Core学习之五 EntityFrameworkCore

时间:2023-03-08 22:50:27
ASP.NET Core学习之五 EntityFrameworkCore

  目的:运用EntityFrameworkCore ,使用codefirst开发

一、创建web项目

  创建一个不进行身份验证的   ASP.NET Core Web Application (.NET Core)  项目;

二、引用包

  引用 EntityFrameworkCore、EntityFrameworkCore.SqlServer

三、准备工作

  在项目添加一个User实体

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

四、创建DbContext

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

五、配置Startup

  首页、在appsettings.json添加链接字符串

{
"ConnectionStrings": {
"DefaultConnection": "Data Source=.;Initial Catalog=SmallBlog;User ID=sa;Password=123456"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning"
}
}
}

  然后、在Startup添加DbContext

 public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<SbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))); services.AddMvc();
}

6. 进行迁移

  其他文章都是安装 Microsoft.EntityFrameworkCore.Tools 去迁移,我自己试了其实很简单,和以前的ef一样

  微软文档:https://docs.microsoft.com/zh-cn/ef/core/get-started/aspnetcore/new-db?view=aspnetcore-2.1

 在 包管理器控制台 下执行以下命令,没出错的话,数据库就自动建好了

 PM> Add-Migration InitialCreate
 PM> Update-Database

7.测试

 var user = _userRepository.GetById();
if (user == null)
{
_userRepository.Add(new User()
{
Password = "",
UserName = "handsome"
});
} user = _userRepository.GetById();

业余时间不多,直接上代码

源码下载地址:https://gitee.com/zmsofts/XinCunShanNianDaiMa/blob/master/.netcore/SmallBlog.rar  

参考文章:

https://www.cnblogs.com/baobaodong/p/5870851.html