asp.net リンク ボタンがいくつかありますが、それらを asp.net ハイパーリンクに変更できません。リンクボタンがあるhttp://www.sourceserver.comとは別のサーバー (たとえばhttp://www.targetserver.com/sample.pdf )に PDF ファイルがあるときに、ボタンをクリックしたときに PDF ファイルを開きたい. 同じウィンドウでPDFを開きたい。Response.Redirect を使用して、同じウィンドウで pdf を開く pdf の URL を渡すことはできますか?
4 に答える
はい、完全修飾 URL を渡す限り、応答リダイレクトは正常に機能します。
Response.Redirect("http://www.site.com/target.pdf");
ブラウザを PDF ファイルにリダイレクトする必要があります。
Response.Redirectは、ブラウザーに HTTP 302 を送信することで機能するため、ターゲットは同じサーバーまたは別のサーバー上にある可能性があります。
次のように Response.Redirect を使用できます。
Response.Redirect("http://www.targetserver.com/sample.pdf");
Response.Redirect("targetserver.com/sample.pdf";) を試しましたが、このように移動します sourceserver.com/www.targetserver.com/sample.pdf
もちろん、プロトコルを指定しないと、サーバー上にあるファイルを参照していると見なされるためです。この場合、追加する必要がありますhttp://
。
さらに、「何が起こるか」というアクションは、ユーザーのクライアントに依存します。クライアントが Adobe Reader をインストールしていない場合、またはファイルを開く代わりにファイルを保存するようにブラウザを設定している場合、明らかにファイルは開きません。ファイルがブラウザで開かれることを確認したい場合は、Web サイトに PDF リーダーを実装する必要があります。
これを試して:
protected void LinkButton1_Click(object sender, EventArgs e)
{
Response.Redirect("http://www.targetserver.com/sample.pdf");
}