如何从路由表中删除路由

维基

我正在尝试从路由表中删除一条路由。我的代码是:

var pages = from v in db.tblCmsPages where v.IsActive select v.PageUrlName;
foreach (string row in pages)
{
       routes.MapRoute(
       name: "mypages_"+row,
       url: row,
       defaults: new { controller = "MyPages", action = "en" },
       namespaces: new[] { "MGP_RealState.Controllers" }
       );
}

这是我的路线集合。我只想从此收藏中删除一条特定的路线。我试图使用linq选择特定的路线,就像

var myrouter = from v in System.Web.Routing.RouteTable.Routes where v.? select v

不工作

System.Web.Routing.RouteTable.Routes.Remove(?);
维基

只是我们需要创建一个路由对象。

//Create the object of particular router
var rr = new System.Web.Routing.Route(tblcmspage.PageUrlName, new MvcRouteHandler())
            {
                Defaults = new System.Web.Routing.RouteValueDictionary(new { controller = "MyPages", action = "en" }),
                DataTokens = new System.Web.Routing.RouteValueDictionary(new { namespaces = new[] { "MGP_RealState.Controllers" } })
            };

//delete the router                
System.Web.Routing.RouteTable.Routes.Remove(rr);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章