C# 响应重定向不工作
上面是我的代码,我已经在C# 响应重定向不工作,c#,asp.net,C#,Asp.net,上面是我的代码,我已经在上放置了一个断点。SelectedValue正在识别该值,但当我单击按钮时,它会显示以下消息: 您的示例假设存在一个站点,例如1.aspx或221.aspx。您只传递一些选定的值 private void Button1_OnClick(object sender, EventeArgs e) { Response.Redirect(myselect.SelectedValue.ToString(), true); } 您需要重定向到某种类型的操作,如: pri
上放置了一个断点。SelectedValue
正在识别该值,但当我单击按钮时,它会显示以下消息:
您的示例假设存在一个站点,例如
1.aspx
或221.aspx
。您只传递一些选定的值
private void Button1_OnClick(object sender, EventeArgs e)
{
Response.Redirect(myselect.SelectedValue.ToString(), true);
}
您需要重定向到某种类型的操作,如:
private void Button1_OnClick(object sender, EventeArgs e)
{
Response.Redirect(myselect.SelectedValue.ToString(), true);
}
然后您需要更改onClick方法,如:
public FileResult DownloadFile(int id) {
// Your code to retrieve a byte array of your file
var thefileAsByteArray = .....
return File(thefileAsByteArray, System.Net.Mime.MediaTypeNames.Application.Octet, 'DownloadFilenName.pdf');
}
要执行所需操作,必须将文件下载到客户端。回复。重定向,正如人们提到的重定向到URL。 要使其在浏览器中打开,您需要执行以下操作:
private void Button1_OnClick(object sender, EventeArgs e)
{
Response.Redirect("Download.aspx?id=" + myselect.SelectedValue.ToString(), true);
}
对于内容配置,您有两种选择:
private void Button1_OnClick(object sender, EventeArgs e)
{
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", "inline; filename=MyFile.pdf");
Response.TransmitFile(myselect.SelectedValue.ToString());
Response.End();
}
您在myselect.SelectedValue.ToString()中有什么值??pdf的路径。它是完整的URL还是相对值?路径如下所示:C:\Users\Admin\Desktop\Site\Site\pdf\PC\1。查看PDF.pdfResponse.redirect to other then http或ftp将导致错误。抱歉,我不明白在public FileResult中我必须做什么…@jorgehvieirasilva在下载方法中执行逻辑,而不是提交到您的PDF的完整路径。在不下载文件的情况下,没有办法做到这一点?可能。查看另一个答案。我在哪里添加Response.AddHeader行?抱歉,将其附加头添加到我将更新它。显示内容处置头的示例,以强制浏览器显示文件(如适用),如pdf/excel..等。或者显示下载提示,它终于起作用了。但是,我怎样才能在新的选项卡中打开pdf?xD:D:D耶。。很高兴帮助jorge,如果有帮助,请不要忘记标记答案:)。。在另一个选项卡中打开将需要另一种实现方式:)我们可以转到聊天来告诉您方法。
Response.AppendHeader("Content-Disposition", "attachment;filename=somefile.ext") : Prompt will appear for file download
Response.AppendHeader("Content-Disposition", "inline;filename=somefile.ext") : the browser will try to open the file within the browser.