私は過去2日間問題に取り組んできました。可能な限りあらゆる方法でデバッグを試みましたが、無駄でした。私のローカルではすべてが正常に機能しますが、本番環境ではこれは失敗します。問題について簡単に説明します。ダウンロードボタンがあり、そのボタンをクリックすると、サーバーからファイルをダウンロードする予定です。
protected void Download_Click(object sender、EventArgs e){
Button downloadButton = sender as Button;
string filePath = downloadButton.CommandArgument;
string stuid = Session["browse_files_for_student"].ToString();
string stuUsername = MyHelper.GetUsernameForStudentID(stuid);
MyHelper.LogAccess(User.Identity.Name, StudentUsername.Text, filePath, MyHelper.LogAccessType.Read);
FileInfo file = new FileInfo(filePath);
// Download the file
Response.Clear();
Response.AppendHeader("content-disposition", "attachment; filename=" + file.Name);
try
{
Response.TransmitFile(filePath);
}
catch (IOException error)
{
Response.Cookies.Add(new HttpCookie("global_last_error", "The file is in use by another process."));
Response.Redirect("~/Public/KnownError.aspx");
}
Response.End();
}
イベントビューアに次のように表示されます。TransmitFilefailed:FileName:dsdfsfd.doc、Impersonation Enabled:0、Token Valid:1 HRESULT:0x8007052e。
環境:WebサイトはWindows2000サーバーに展開されています。
どんな助けやコメントもいただければ幸いです。ありがとうございました。