我正在尝试保存从我的页面上传的文件,但是我收到了拒绝访问错误:
public void SaveFile(Item item, HttpPostedFileBase file)
{
var dir = string.Format(@"{0}\NSN\{1}", ConfigurationManager.AppSettings["ContentLocation"].ToString(), item.Id.ToString());
if (!System.IO.Directory.Exists(dir))
System.IO.Directory.CreateDirectory(dir);
Array.ForEach(Directory.GetFiles(dir), File.Delete);
file.SaveAs(dir);
}
我从visual studio的本地主机运行此站点,因此不涉及任何应用程序池。我已经给网络服务(和所有人作为测试)完全控制了文件夹及其子文件夹。奇怪的是,如果需要,它会创建文件夹,并删除现有文件夹中的任何文件。只有当我调用SaveAs函数时才会收到错误。
答案 0 :(得分:3)
您使用目录路径调用file.SaveAs
而不是文件路径
答案 1 :(得分:2)
在这里,尝试一下:
string saveAsPath = Path.Combine(dir, file);
file.SaveAs(saveAsPath);
将file.SaveAs(dir)
替换为上述内容。