1

私のアプリケーションでは、ソリューションに PDF ドキュメントがあり、ユーザーが特定のボタンをクリックすると、ポップアップ ウィンドウでドキュメントを開く必要があります。ファイルストリームオブジェクトを返すだけで、同じウィンドウで開くことができました。使用したコード。

public ActionResult ShowPdf()
    {
        if (System.IO.File.Exists(Server.MapPath("~/downloads/MyPdf.pdf")))
        {
            string pathSource = Server.MapPath("~/downloads/MyPdf.pdf");
            FileStream fsSource = new FileStream(pathSource, FileMode.Open, FileAccess.Read);

            return new FileStreamResult(fsSource, "application/pdf");
        }
        else
        {
          return RedirectToAction("Index", "User");
        }
    }

ポップアップウィンドウに同じものをロードするにはどうすればよいですか

前もって感謝します

4

1 に答える 1

3

これは、クライアントからこのコントローラー アクションを呼び出す方法によって異なります。たとえば、リンクがある場合、target="_blank"このアンカーに属性を追加できます。例えば:

@Html.ActionLink(
    "Download pdf",
    "ShowPdf",
    "SomeController",
    null,
    new { target = "_blank" }
)

または、javascript を使用してコントローラー アクションを呼び出す場合は、window.open関数を使用できます。

于 2013-02-25T09:50:35.780 に答える