1

System.Web.Routing で定義された一連のルートがあり、.aspx 拡張子を持つ実際の URL を取得する必要があります。私はこのコードを試しましたが、ここで何か間違っています:

 var path = RouteTable.Routes.GetVirtualPath(null, item.Link, null);
 var link = path.Route.GetVirtualPath(null, null);
 if (link.VirtualPath.ToLower().Contains("~/displaycmspage.aspx?pagename="))
 {
      //do work on url here
 }

どうすればこれを行うことができますか?item.link は、ルートがあるカスタム オブジェクトです。

4

1 に答える 1

1

わかりましたので、答えを見つけました:

 var path = RouteTable.Routes[item.Link];
 Route ruta = path as Route;
 var link = ruta.RouteHandler as PageRouteHandler;
 if (link.VirtualPath.ToString().ToLower().Contains("~/displaycmspage.aspx?pagename="))
 {
      //do work on url here
 }
于 2012-06-29T09:37:42.123 に答える