.NET MAUI应用程序中的SQLite数据库文件路径导致合并()中的空字符串

31moq8wy  于 2023-06-06  发布在  SQLite
关注(0)|答案(1)|浏览(438)

我尝试将SQLite数据库添加到我的.NET MAUI应用程序,但无法获取数据库文件的路径。
当我在这段代码中添加断点时

string dbpath = Path.Combine(
    Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
    "clientdb.db3");

当调试应用程序时,dbpath变量是null,并且table方法不显示任何内容。
我尝试将LocalApplictionData更改为CommonApplicationDataMyDocuments,但不起作用。

5fjcxozz

5fjcxozz1#

您可以使用MAUI Essentials中的File System Helpers,而不是使用Environment

string dbpath = Path.Combine(
    FileSystem.Current.AppDataDirectory,
    "clientdb.db3");

它将在每个平台上提供私有应用程序数据目录。
为了查看路径是什么,您可以在组合路径的语句之后放置断点,或者将路径的目录部分输出到控制台:

Console.WriteLine(FileSystem.Current.AppDataDirectory);

如果路径实际上是null,则Path.Combine()方法将抛出ArgumentNullException,就像documentation一样。

相关问题