Asp.Net Core 使用 Sqlite 數據庫


在Asp.Net Core 使用 Sqlite 數據庫


在Asp.Net Core(5.0)項目中使用Sqlite數據庫的設置,

1,創建新web項目

 

 

2,安裝下面的依賴包

Install-Package Microsoft.EntityFrameWorkCore
Install-Package Microsoft.EntityFrameWorkCore.Sqlite
Install-Package Microsoft.EntityFrameWorkCore.Sqlite.Design
Install-Package Microsoft.EntityFrameWorkCore.Sqlite.Core
Install-Package Microsoft.EntityFrameWorkCore.Tools

3,創建數據庫模型類,如下圖

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace WebAppTest.Models
{
    public class Prize
    {
        public int id { get; set; }
        public string prizeid { get; set; }
        public string prizename { get; set; }
        public int point { get; set; }
        public int number { get; set; }
        public Int64 totalpoint { get; set; }
    }
}

4,創建數據庫上下文文件

using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace WebAppTest.Models
{
    public class PrizeContext:DbContext
    {
        public PrizeContext(DbContextOptions<PrizeContext> Options) : base(Options)
        {

        }
        public DbSet<Prize> Prizes { get; set; } 
    }
}

5,修改appsetting.json文件,添加連接字符串 ConnectionStrings部分。

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "AllowedHosts": "*",
  "ConnectionStrings": {
    "DefaultConnection": "DataSource=app.db;Cache=Shared"
  }
}

6,將數據庫上下文注入服務容器,在Startup文件中添加

 public void ConfigureServices(IServiceCollection services)
        {
            services.AddRazorPages();

            services.AddDbContext<PrizeContext>(options => options.UseSqlite(Configuration.GetConnectionString("DefaultConnection")));
        }

7,至此配置完成,在程序包管理器控制台運行代碼創建數據庫文件及表

Add-Migration InitialCreateDb

其中InitialCreateDb為遷移名稱,可以為任何自定義字符串。

8,在程序包管理器控制台運行下面代碼完成創建

Update-Database

9,使用Sqlite查看工具(Sqlite Expert),打開數據庫,可以看到創建好的表格。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM