目前,我爲我的文件保存到我的代碼中的硬編碼目錄:使用向使用Server.Mappath保存文件
var filePath = Path.Combine(@"C:\users\my documents\github\project\source\project\App_Data\stored\", package.Id + ".zip");
但我需要使用到使用Server.Mappath救我的文件... 。 像:
FileInfo userFile = new FileInfo(Path.Combine(Server.MapPath("~/App_Data/stored"), package.Id));
完整的功能:
public void CompressAndDeleteSources(FlinkeMailPackage package)
{
var filePath = Path.Combine(@"C:\users\my documents\github\project\source\project\App_Data\stored\", package.Id + ".zip");
using (ZipFile zipFile = new ZipFile(filePath))
{
foreach (var file in package.FlinkeMailFileList)
{
string bestandsNaam = @"C:\users\my documents\github\project\source\project\App_Data\uploads\" + file.OriginalName;
zipFile.AddFile(bestandsNaam);
}
zipFile.Save();
}
foreach (var file in package.FlinkeMailFileList)
{
var filePathToDelete = @"C:\users\my documents\github\project\source\project\App_Data\uploads\" + file.FileName;
File.Delete(filePathToDelete);
}
}
但是,當我試圖使用Server.MapPath("~/App_Data/stored")
它不知道什麼是服務器
編輯
我可以用它喜歡:HttpContext.Current.Server.MapPath("~/App_Data/stored");
但我不能用它package.Id + ".zip"
像例如:var savePath = HttpContext.Current.Server.MapPath("~/App_Data/stored"),package.Id + ".zip"));
'Server.MapPath'將路徑映射到應用程序的根。 – vijay