【问题标题】:Relative Path for Sqlite database via DbContextOptionsBuilder.UseSqlite?通过 DbContextOptionsBuilder.UseSqlite 的 Sqlite 数据库的相对路径?
【发布时间】:2020-02-27 01:18:39
【问题描述】:

我有一个 .Net Core 2.2 项目,后端需要打开一个 DbContext 到 Sqlite 数据库。

我需要类似的东西:

optionsBuilder.UseSqlite(@"Data Source=Data\Database.db");

但是数据库位于\Data\ 中,相对于项目的根目录。

这应该不起作用还是我必须在此处添加额外的代码来确定相对路径?

【问题讨论】:

  • 它应该可以工作。如果没有,您是否忘记在您的*.csproj 中添加<ItemGroup><None Update="Data\Database.db" CopyToOutputDirectory="PreserveNewest" /></ItemGroup>
  • 您在迁移时遇到错误还是没有尝试过?
  • @alim91 我试过了,当然 :) 我会用与找不到文件相关的具体错误来更新问题
  • 好的,会更好,但是您是否先创建了“Data”文件夹?

标签: c# asp.net-core asp.net-core-mvc asp.net-core-2.0


【解决方案1】:

使用正斜杠“/”代替反斜杠“\”

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

【讨论】:

    猜你喜欢
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-20
    • 1970-01-01
    • 2016-05-29
    相关资源
    最近更新 更多