C# .NET EF框架 webapi 安装使用sqlite

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就是我们程序运行的对象和数据库存储的对象是一致的。数据库只是我们运行的数据持久化的一个地方。数据库就是一个超级大,持久化的对象数组。

举例

程序 数据库 新建实体对象 实体对象进行修改 存储持久化,Id自增 查询数据库,返回符合的对象数组 程序 数据库

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

在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
我们这里新建了一个数据库,那就是创建成功了

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44695769/article/details/131116806
今日推荐