2011-02-10 8 views
1

에서 매개 변수 URL로 리디렉션 난 asp.net-MVC 사이트 페이지 중 하나가되고있다어떻게 asp.net-MVC 컨트롤러

http://www.mysite.com/Report 
생성 클라이언트 측 필터를 추가 할 수

사용자 이 같은 URL을 :

http://www.mysite.com/MyLastReport 

및 모방 컨트롤러 액션이 :이 같은 링크를 먹고 싶어

http://www.mysite.com/Report?Region=US 

사람이이 같은 URL에 일부 매개 변수를 추가하는 것처럼 :

Request.Params[] 

내 쿼리를 필터링하고 나는를 얻기 위해 동일한 코드 경로를 사용하려면 :

내 서버 측 코드를 사용
http://www.mysite.com/Report?Region=US 

로 URL에 클라이언트 측에서 이러한 매개 변수가있는 것처럼 결과가 표시됩니다. 의 Global.asax에 다음을 추가

http://www.mysite.com/Report?Region=US 

답변

2

: 또한

, 그래서 난 사실에 브라우저에서 URL을 변경 그대로 서버 측에서 URL의 리디렉션을 수행하려면 어쨌든이

protected void OnBeginRequest(object sender, EventArgs e) 
{ 
    if (Request.Url.AbsolutePath.Equals("/MyLastReport", StringComparison.OrdinalIgnoreCase)) { 
     Context.RewritePath("/Report?Region=US"); 
    } 
} 

public override void Init() 
{ 
    base.Init(); 
    BeginRequest += OnBeginRequest; 
} 

UPDATE :

RedirectToAction("ReportActionName", new { Region = "US" }); 
: 당신이 RedirectToAction 방법을 사용할 수 있습니다 컨트롤러 액션에서
+0

K. - 필터가 데이터베이스 쿼리를 기반으로하므로 컨트롤러 작업에서이 작업을 수행하려고합니다. – leora

+0

@ooo 업데이트 확인 –

관련 문제