2012-01-15 6 views
0

私はRazor EngineでMVC 3を使用しています。 レイアウトページでアクションリンクを実装しようとしています。このアクションリンクは、ページの言語を変更し、イベントを呼び出したページにリダイレクトします。MVC 3のレイアウトアクションの処理

私の質問は、どのようにレイアウトアクションを処理し、どのURLからアクションリンクが呼び出されたのかを知ることです。

public void Changelanguage() 
    { 
     if (MyClass.CommonFuncs.CheckLang() == "en-US") 
     { 
      MyClass.CommonFuncs.SetArabicLang(); 
     } 
     else 
     { 
      MyClass.CommonFuncs.SetEnglishLang(); 
     } 
     this.Redirect(Request.UrlReferrer.AbsoluteUri); 
    } 

答えて

0

あなたは背中のHttpContextにRequest.UrlReferrerを使用して、元々そのページにリダイレクト人へリダイレクトするようにページを検出する必要があります:

http://msdn.microsoft.com/en-us/library/system.web.httprequest.urlreferrer.aspx

または、元のページを渡します言語を変更すると、そのURLを使用してリダイレクト先に戻ります。

HTH。

+0

私のコントローラ/メソッドのURLを持つ白いページを返します。私はthis.Redirect(Request.UrlReferrer.AbsoluteUri)を使用しています。このメソッドはvoidです –

+0

@BrianManisコードの一部で質問を更新しました –

+0

@BrianManisこれは問題なく動作しました。タイ –

関連する問題