Windows 普遍应用。访问路径被拒绝
Windows universal application. Access to the path is denied
我正在构建我的第一个 windows 通用应用程序。
我正在尝试访问文件,但收到此错误:
Additional information: Access to the path 'C:\database\reservation.txt' is denied.
代码:
await Task.Run(() =>
{
string path = @"C:\database\reservation.txt";
string json = File.ReadAllText(path);
dynamic result = JsonConvert.DeserializeObject(json);
var urls = new List<string>();
foreach (var file in result.version.files)
{
urls.Add(file.url);
}
});
我该如何解决这个问题?
我已经尝试将所有功能设置为 true。但那是行不通的。
您无法像在 Windows 商店应用中那样访问所有文件。请查看 this MSDN page 以获取允许您的应用使用的位置列表。此外,要使用它们中的大部分,您必须声明合适的 Capabilities。如果您的文件在此列表之外 and/or 您还没有声明功能,您将得到 UnauthorizedException.
一般而言,商店应用不应在用户不知情的情况下访问文件 - 这是设计使然。如果您以后想访问文件,您可以选择带有 FileOpenPicker and then access it by FutureAccessList 或 MostRecentlyUsed.
的文件
我正在构建我的第一个 windows 通用应用程序。
我正在尝试访问文件,但收到此错误:
Additional information: Access to the path 'C:\database\reservation.txt' is denied.
代码:
await Task.Run(() =>
{
string path = @"C:\database\reservation.txt";
string json = File.ReadAllText(path);
dynamic result = JsonConvert.DeserializeObject(json);
var urls = new List<string>();
foreach (var file in result.version.files)
{
urls.Add(file.url);
}
});
我该如何解决这个问题?
我已经尝试将所有功能设置为 true。但那是行不通的。
您无法像在 Windows 商店应用中那样访问所有文件。请查看 this MSDN page 以获取允许您的应用使用的位置列表。此外,要使用它们中的大部分,您必须声明合适的 Capabilities。如果您的文件在此列表之外 and/or 您还没有声明功能,您将得到 UnauthorizedException.
一般而言,商店应用不应在用户不知情的情况下访问文件 - 这是设计使然。如果您以后想访问文件,您可以选择带有 FileOpenPicker and then access it by FutureAccessList 或 MostRecentlyUsed.
的文件