我正在开发一个服务结构无状态服务应用程序,在某些时候我需要下载一个文件并将其保存到我的桌面文件夹,但即使我以管理员身份运行我也会收到错误:
拒绝访问路径'C:/ Users / me / Desktop / filename'
using (var response = await _httpClient.SendAsync(httpRequestMessage, HttpCompletionOption.ResponseHeadersRead))
{
using (var streamToReadFrom = await response.Content.ReadAsStreamAsync())
{
var fileName = $"C:\\Users\\me\\Desktop\\{name}{DateTime.Now.ToString("yyyyMMdd")}";
using (var streamToWriteTo = File.Create(fileName))
{
await streamToReadFrom.CopyToAsync(streamToWriteTo);
}
}
}
我正在测试运行本地调试集群,但是当我部署它时,我想保存到网络路径。
答案 0 :(得分:2)
如果您运行任务管理器并转到详细信息选项卡,您将看到Service Fabric的进程(Fabric.exe,FabricGateway.exe和其他进程)作为NETWORK SERVICE用户运行,而不是您自己的用户帐户。 NETWORK SERVICE用户无权访问您的用户个人资料。
如果不了解更多有关您尝试保存文件的原因,很难建议您可以做些什么。但是,如果您的服务投入生产后您将继续这样做,我现在就实施您的最终解决方案。我想这可能会保存到Blob Storage,或者可能是某种类型的数据库。