さまざまなMIMEタイプのファイルを含むフォルダをダウンロードします。私の仮想パスは "http://localhost/attachments/"です。私のサブフォルダは「証明書/ ID」です。だからグリッドをクリックすると、IDをダウンロードページに渡します。しかし、仮想パスのような例外は無効です。 'http://localhost/attachments/certificates/id)'asp.netを使用してサーバーからzipファイルを含むフォルダをダウンロードするにはC#
以下のコードでは、Request.Params [0]はidを意味し、これはzipフォルダを作成するendlevelフォルダを示しています。
ご指摘いただければ幸いです。
using (ZipFile zip = new ZipFile())
{
string VirtualPath = ConfigurationManager.AppSettings.Get("AttachmentsShowVirtualPath");
string Path = string.Empty;
Path = "certificates" + "/";
string folderPath = VirtualPath + Path + Request.Params[0] + "/";
zip.CompressionLevel = CompressionLevel.None;
zip.AddSelectedFiles(".", Server.MapPath(folderPath), "", false);
zip.Save(Response.OutputStream);
}
folderPath文字列が正しいことを確認しましたか?あなたは例外を受けていますか? – user3378165
この行では、仮想パスが無効です。 zip.AddSelectedFiles( "。"、Server.MapPath(folderPath)、 ""、false);しかし、私が指すフォルダパスは正しいです。 –