コントローラー アクションからパスを指定して特定の aspx ページを返すにはどうすればよいですか?
コントローラーアクションからリダイレクトする方法は次のとおりです。
Response.Redirect("_PDFLoader.aspx?Path=" + FilePath + id + ".pdf");
次のことも試しました:
return Redirect("_PDFLoader.aspx?Path=" + FilePath + id + ".pdf");
ここに私の _PDFLOader.aspx ページがあります:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="_PDFLoader.aspx.cs" Inherits="Proj._PDFLoader" %>
ここに私のCodeBehindファイルがあります:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
namespace Proj
{
public partial class _PDFLoader : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string OutfilePath = Request.QueryString["Path"].ToString();
FileStream objfilestream = new FileStream(OutfilePath, FileMode.Open, FileAccess.Read);
int len = (int)objfilestream.Length;
Byte[] documentcontents = new Byte[len];
objfilestream.Read(documentcontents, 0, len);
objfilestream.Close();
if (File.Exists(OutfilePath)) File.Delete(OutfilePath);
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", documentcontents.Length.ToString());
Response.BinaryWrite(documentcontents);
}
}
}
どんな助けでも大歓迎です。