You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET 6+Identity+Sqlite环境下如何配置services.AddDbContext

解决方案

1. 修正依赖包安装

你当前安装的Microsoft.EntityFrameworkCore.Sqlite.Core是SQLite EF Core驱动的核心运行库,不包含UseSqlite等配置扩展方法,你需要替换安装完整的NuGet包:

  • 卸载Microsoft.EntityFrameworkCore.Sqlite.Core
  • 安装Microsoft.EntityFrameworkCore.Sqlite
    如果你后续需要适配SQL Server,额外安装Microsoft.EntityFrameworkCore.SqlServer即可获得UseSqlServer扩展方法。

2. 补充命名空间引用

在Program.cs头部添加EF Core的命名空间引用:

using Microsoft.EntityFrameworkCore;

3. 配置连接字符串

在项目根目录的appsettings.json中添加SQLite连接字符串配置:

{
  "ConnectionStrings": {
    "SqliteConn": "Data Source=./auth_demo.db"
  },
  // 其他原有配置保持不变
}

4. 完成DbContext注入配置

修改Program.cs中的DbContext注入代码即可:

builder.Services.AddDbContext<ApplicationDbContext>(options => 
    options.UseSqlite(builder.Configuration.GetConnectionString("SqliteConn")));

补充说明

.NET 6+ 引入的顶级语句Program.cs确实完全替代了之前版本的Startup.cs功能,服务注册全部在builder.Build()之前、通过builder.Services配置即可,中间件配置在builder.Build()之后、通过app变量配置,和之前Startup的ConfigureServices、Configure方法逻辑完全对应。

内容的提问来源于stack exchange,提问作者Damn Vegetables

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 09:36:04