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

为何配置返回错误的Connection String?SQLite连接串获取异常咨询

解决SQLite连接串读取错误问题
  • 检查配置文件加载优先级
    ASP.NET Core配置加载有优先级顺序:命令行参数 > 环境变量 > appsettings.{Environment}.json > appsettings.json。如果根目录的appsettings.json中也定义了DefaultConnection,且值为那个默认SQLite路径,会覆盖开发环境配置文件的内容。去确认appsettings.json里是否存在冲突的连接串配置。

  • 验证当前运行环境
    确保项目运行在Development环境下,否则appsettings.Development.json不会被加载。可以通过两种方式确认:

    • 在Program.cs中添加代码输出当前环境:
      Console.WriteLine($"当前环境: {builder.Environment.EnvironmentName}");
      
    • 查看项目调试属性,确认ASPNETCORE_ENVIRONMENT变量是否设置为Development。
  • 检查DbContext的硬编码配置
    确认StoreContext的OnConfiguring方法是否硬编码了默认连接串,比如:

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlite("Data Source=./Data/SQlLiteDatabase.db");
    }
    

    这种硬编码会覆盖Program.cs中的配置。可以修改为仅在未配置时使用默认值:

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        if (!optionsBuilder.IsConfigured)
        {
            optionsBuilder.UseSqlite("Data Source=./Data/SQlLiteDatabase.db");
        }
    }
    
  • 清理项目缓存
    清理项目的bin和obj文件夹,重新生成解决方案,避免缓存的旧配置影响读取结果。

内容的提问来源于stack exchange,提问作者Kateryna Bondarenko

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 01:13:03