文章目录
- Sqlite安装使用
- Sqlite特点
- 环境安装
- EF 是什么?
- EF使用
- 举例
 
- Nuget控制台
 
Sqlite安装使用
Sqlite特点
Sqlite是轻量级数据库,不需要安装,跨平台使用。是用来做小软件,小项目,快速移植的最优解。不需要像mysql和Sqlserver一样先进行安装数据库,再进行使用。
环境安装
Net.Core =6.0
项目文件

- EF.Sqlite: Sqlite轻量级数据库,不需要安装,只需要引入Nuget包

- EF.Tool:数据库转移工具,.Net默认Sqlserver。这个是转移数据库管理对象,从Sqlserver转移到sqlite

- EF框架引入

EF 是什么?
EF是ORM实体关系数据库,什么是ORM?简单来说ORM就是我们程序运行的对象和数据库存储的对象是一致的。数据库只是我们运行的数据持久化的一个地方。数据库就是一个超级大,持久化的对象数组。
举例
EF使用
新建两个文件
- DbContext.cs:数据库对应类,用于进行sql操作
- DtName.cs:数据表对应类,用于设计数据表对应的字段,Id不需要
举例
数据库:MyToDoDbContext,继承DbContext
using Microsoft.EntityFrameworkCore;
namespace MyToDo.Api.Context
{
    public class MyToDoContext:DbContext
    {
        public MyToDoContext(DbContextOptions<MyToDoContext> options):base(options)
        {//继承DbContext建库方法
            
        }
        public DbSet<ToDo> ToDo { get; set; }
    }
}
数据表对应实体:ToDo类
namespace MyToDo.Api.Context
{
    public class ToDo 
    {
        public string Title { get; set; }
        public string Content { get; set; }
        public int Status { get; set; }
    }
}
在json中添加数据库连接串


{
  "ConnectionStrings": {
    "ToDoConnection": "Data Source=to.do"
  },
  ...
}
在Program中设置,引用sqlite


builder.Services.AddDbContext<MyToDoContext>(options =>
{
//这个是我们在appsettings.json里面添加的数据库连接串
    var connectionStr = builder.Configuration.GetConnectionString("ToDoConnection");
    options.UseSqlite(connectionStr);
});
Nuget控制台



 Nuget管理工具默认项目选择WebApi项目

我们在控制台中输入代码:Add-Migration MyToDo(你的管理器名称)

 再输入Update-Database

如果你报了这个错误,记得看一下你的配置名字对不对的上



 我们这里新建了一个数据库,那就是创建成功了
















