第二次尝试访问 json 文件时拒绝访问
Access Denied when trying to access a json file for the second time
我可以在初始化时访问一个文件一次,但不能第二次访问它。
首次访问:
static Gun()
{
using (var sr = new StreamReader(AppSettings))
{
Settings = JsonConvert.DeserializeObject<Settings>(sr.ReadToEnd());
sr.Close();
}
第二次访问:
public static void Save()
{
// Changing to StreamReader doesn't work either
using (var sr = new StreamWriter(AppSettings))
{
var settings = JsonConvert.SerializeObject(Settings);
sr.WriteLineAsync(settings);
sr.Close();
}
}
当我第二次尝试访问它时,出现未授权访问异常。不是正在使用的文件,而是未经授权的文件。为什么我的项目的范围或权限会在同一个应用程序中发生变化?
Access Denied when trying to access a json file for the second time
一般情况下,我们建议您将设置文件存储在 UWP 应用本地存储中。它具有完全访问权限。
例如
string settingFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SettingFile.json");
public void GetSetting()
{
using (var reader = new System.IO.StreamReader(settingFile))
{
var json = reader.ReadToEnd();
var settings = JsonConvert.DeserializeObject<Settings>(json);
reader.Close();
}
}
public void Save()
{
using (var sr = new StreamWriter(settingFile))
{
var newSetting = new Settings()
{
ID = "SGML"`enter code here`
};
var settings = JsonConvert.SerializeObject(newSetting);
sr.WriteLineAsync(settings);
sr.Close();
}
}
我可以在初始化时访问一个文件一次,但不能第二次访问它。
首次访问:
static Gun()
{
using (var sr = new StreamReader(AppSettings))
{
Settings = JsonConvert.DeserializeObject<Settings>(sr.ReadToEnd());
sr.Close();
}
第二次访问:
public static void Save()
{
// Changing to StreamReader doesn't work either
using (var sr = new StreamWriter(AppSettings))
{
var settings = JsonConvert.SerializeObject(Settings);
sr.WriteLineAsync(settings);
sr.Close();
}
}
当我第二次尝试访问它时,出现未授权访问异常。不是正在使用的文件,而是未经授权的文件。为什么我的项目的范围或权限会在同一个应用程序中发生变化?
Access Denied when trying to access a json file for the second time
一般情况下,我们建议您将设置文件存储在 UWP 应用本地存储中。它具有完全访问权限。
例如
string settingFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SettingFile.json");
public void GetSetting()
{
using (var reader = new System.IO.StreamReader(settingFile))
{
var json = reader.ReadToEnd();
var settings = JsonConvert.DeserializeObject<Settings>(json);
reader.Close();
}
}
public void Save()
{
using (var sr = new StreamWriter(settingFile))
{
var newSetting = new Settings()
{
ID = "SGML"`enter code here`
};
var settings = JsonConvert.SerializeObject(newSetting);
sr.WriteLineAsync(settings);
sr.Close();
}
}