2010-11-25 9 views
1

GenericPage.aspxをレンダリングするプロジェクトにGenericPagecontrollerがあります。ホームページには、このGenericPageconrollerのための2つの他のページにリンクがあります。どこから呼び出されたかに基づいて、GenericPage.aspxに渡すべき別のデータがあります。コントローラがHomePageからリクエストされた場合、私はビューに表示するデータのセットが異なります。また、他のページから別のセットのデータをビューに表示する必要がある場合もあります。現時点では、Indexメソッド(GenericControllerのデフォルトメソッド)にオプションのパラメータを保持し、現在のページの名前を保持するURLにクエリー文字列を追加しました。したがって、パラメタから、どのリンクからリクエストが来て、適切なデータがビューにロードされているかがわかります。Asp.Net MVC前のページを見つける

これを達成する方法はありますか?その代わりに関連情報を運ぶクエリーストリングがありますか?動的にこれを見つけるための何らかの方法?

答えて

3

参照ページを含むRequest.UrlReferrerを確認できます。

しかし、この方法は100%信頼できるわけではありません。

+0

ポール@を助けるべきである:はい、私はありません、他のオプション以来と左午前推測します私はメインページを持っており、他のすべてのページはメインページ内のjqueryタブになりますので、クリックするとメインページのURLがわかります。 – Novice

+0

@Dainel、私はあなたがクエリーストリングを使うべきだとは思わない、パラメータとルートを使用してください! –

+0

もう1つの問題はモジュールが区切られていることです – Novice

1

あなたがリダイレクトする前にURLを格納するためにTempDataをを使用することができてもよいがSystem.Web.HttpContext.Current.Request.UrlReferrerはあなたに

+0

私はもっと説明を加えることを提案します。それは何ですか?どうして?どうやって? – peterh

関連する問題