Windows通用应用程序。拒绝访问该路径

时间:2016-12-22 12:18:17

标签: c# file universal

我正在构建我的第一个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。但那不起作用。

1 个答案:

答案 0 :(得分:1)

您无法像在Windows应用商店应用中那样访问所有文件。请查看this MSDN page以获取您的应用所允许使用的位置列表。同样要使用其中大部分,您必须声明合适的功能。如果您的文件在此列表之外和/或您尚未声明功能,您将获得 UnauthorizedException

通常存储应用程序不应该在用户不知情的情况下访问文件 - 这是设计的。如果您希望以后访问文件,可以选择FileOpenPicker的文件,然后通过FutureAccessList MostRecentlyUsed 访问该文件。