篇(5)-Asp.Net Core入门实战-使用EF,操作数据库,要先配好相应代码

入门实战-使用EF,操作数据库,要先配好相应代码

(1).创建数据库和表(在篇3内已讲过);

(2).使用Nuget引入和安装EF的两个文件包(在篇3内已讲过);

(3).在appsetting.json中添加数据库连接字符串(在篇3内已讲过);

(4).在项目根目录Db文件夹中创建一个AppDbContext.cs类;

public class AppDbContext : DbContext
{
    public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { }
    //各名称对应数据表名
    public DbSet<Menu> Menu { get; set; }
}

 

(注意在MVC对应的Models文件内,新建一个Menu.cs的model类,它的属性与数据库的表字段对应,可以等到下节将增、删、改、查、时,在添加此类文件)可以见下面代码

(5).在Startup.cs文件中配置数据库连接

代码为:

services.AddEntityFrameworkSqlServer().AddDbContextPool<AppDbContext>(options =>
{
  options.UseSqlServer(Configuration.GetSection("DbConnectionStr")["SqlServerStr"]);
  //读取appsetting.json文件中的数据库配置字符串
});

 

使用的数据库为Sql-Server,如果用Mysql数据库,则可以先通过nuget安装mysql的软件包,然后关键代码修改为:

options.UseMySql(Configuration.GetSection("DbConnectionStr")["SqlServerStr"]);

 

(6).关于在appsettging.json中配置的数据代码:

options.UseSqlServer(Configuration.GetConnectionString("SqlServerStr "));

用这句代码来直接获取到SqlServerStr节点来读取配置。

(7).Asp.Net core的EF(Entity Framework)中有新功能,配置好EF以后,并在增加了Model类文件后,通过在命令界面,就是程序包管理器控制台,来操作数据迁移,数据库更新等命令,跟前面的写实体类代码,约定匹配关系等,这一系列的过程,有2个名字:Code First和Database First(Db First);

区别是:Db First,先建库建表,在写实体类和匹配关系;

Code First,先写实体类和匹配关系,通过命令成数据库;

要入门,先Db First,它很适合初学者,或者是比较急的小型项目。详细的数据迁移等命令和模式详解,可以自行百度或查看微软官网学习。

posted @ 2022-11-12 10:55  荣景智工  阅读(1106)  评论(0编辑  收藏  举报