只要我将数据源设置为完全限定路径,使用实体框架核心访问SQLite数据库就可以在Windows上工作。我想把这个数据库嵌入到我的应用程序中。我将database.db添加到Resources\Raw文件夹中,并将BuildAction设置为MauiAsset。
我将其添加到.csproj文件中:
<MauiAsset Include="Resources\Raw\database.db" />但是"Data Source=database.db"字符串不起作用。
发布于 2022-11-09 17:56:10
您必须将数据库从app包复制到App目录。
string databaseName = "database.db3";
string databasePath = System.IO.Path.Combine(FileSystem.AppDataDirectory, databaseName);
Task<Stream> task = FileSystem.OpenAppPackageFileAsync($"Resources/Raw/{databaseName}");
var stream = task.Result;
using MemoryStream memoryStream = new MemoryStream();
stream.CopyTo(memoryStream);
File.WriteAllBytes(databasePath , memoryStream.ToArray());然后,使用变量databasePath建立到数据库的连接。
它也适用于Android平台。
https://stackoverflow.com/questions/73432281
复制相似问题