2010-01-06 2 views
4

나는 라우팅을 가능하게 한 ASP.NET 3.5 webforms 프로젝트가 있습니다. 또한 프로젝트에서 현재 표시되고있는 페이지에 따라 여러 가지 컨트롤을 수행합니다.이 다른 동작을 제어하는 ​​가장 간단한 방법은 페이지를로드하는 데 사용 된 경로를 찾는 것입니다. 그런 다음에 따라 일을하십시오.웹 양식 페이지의 경로 이름을 확인할 수 있습니까?

그러나 실제로는 라우트 바를 발견하여 실제 요청 URL을 찾고 그 위의 정규식을 실행하는 방법을 찾지 못하는 것 같습니다. 누군가 다른 방법으로 그것을 찾는 방법을 알고 있습니까?

업데이트 : 여전히 ASP.NET 4.0에서이 작업을 수행 할 수있는 방법이 없습니다. 바라건대 다른 누군가가 이것을 알아 냈습니까? 그것은 필 Haack과 같은

답변

0

, 나는 경로 정의를 확인하려면이를 사용했다.

string myOperation = 
    ((System.Web.Routing.Route)(Page.RouteData.Route)).Url; 

//string has value "Stop" or "Start" 

은의 당신의 경로가 너무처럼 가정 해 봅시다 :

 routes.MapPageRoute("StopEmailAlerts", 
      "Stop/{SomeToken}", 
      "~/Emailing.aspx", false); 

     routes.MapPageRoute("SendEmailAlerts", 
      "Start/{SomeToken}", 
      "~/Emailing.aspx", false);  
0

난 당신이/받기 post에 경로 이름을 설정하는 데 사용할 수있는 간단한 확장 방법 중 몇 가지를 기록했다. Haack의 솔루션보다 (나에게) 더 간단 해 보입니다.