2009-06-09 17 views
0

これを行うにはどのような方法が適していますか?「前の」リンクを追加する

ViewData["PreviousPage"]=Request.UrlReferrer.PathAndQuery; 

これは直接アクセスしても機能しません。

編集:私はRequest.UrlReferrerにヌルチェックをした、罰金のようです

答えて

1

直接場合は、この方法は不可能です(?)。 URLリファラーは、リンクをクリックしたときにのみ設定されます。

ウェブサイト内で動作している「前のページ」リンクのみに興味がある場合は、現在のURLをセッションに保存して、次のリクエストで取得してから新しい現在のURLに置き換えることができます。醜い、しかし働いている。

1

クライアントサイドではなくサーバーサイドである必要があるのでしょうか?あなたは、クライアント側で対応できる場合は、Javascriptが答えです:

<input type=button value="Back" onClick="history.go(-1)"> 

これは、ブラウザの内蔵バック機能を使用しています - それは、基本的に「戻る」ボタンをクリックする模倣。

TempData["PreviousPage"] = TempData["CurrentPage"]; 
TempData["CurrentPage"] = Request.Url; 
0

は、あなたのベースコントローラまたはカスタムフィルタでは、このどこかを入れて
関連する問題