Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net ASP.MVC 4中的路由别名_Asp.net_Routing_Asp.net Mvc 4 - Fatal编程技术网

Asp.net ASP.MVC 4中的路由别名

Asp.net ASP.MVC 4中的路由别名,asp.net,routing,asp.net-mvc-4,Asp.net,Routing,Asp.net Mvc 4,是否可以在ASP.NET MVC4中动态别名路由 基本上,在WebForms中,我使用了如下内容: foreach (var rule in rules) { routes.MapPageRoute("_" + rule.Url, rule.Url, rule.Redirect); } 以及从数据库中填充规则 我需要允许客户端从CMS重命名路由(或重定向) 谢谢。坦率地说,在ASP.NET MVC中,动态路由别名是一个困难的过程。使用动态约束创建单个管线可能是一个更优雅的解决方案。这需

是否可以在ASP.NET MVC4中动态别名路由

基本上,在WebForms中,我使用了如下内容:

foreach (var rule in rules)
{
    routes.MapPageRoute("_" + rule.Url, rule.Url, rule.Redirect);
}
以及从数据库中填充规则

我需要允许客户端从CMS重命名路由(或重定向)


谢谢。

坦率地说,在ASP.NET MVC中,动态路由别名是一个困难的过程。使用动态约束创建单个管线可能是一个更优雅的解决方案。这需要设置一个仅与您的类别匹配的约束

routes.MapRoute(
    "Product",
    "{alias}/{pageNumber}",
    new { controller = "Products", action = "Choose", alias = UrlParameter.Optional, pageNumber = 1 },
    new { alias = new ProductOptionCondition() } );

上面的动态自定义分页使用动态路由别名选项。你到底做了什么。请您解释一下这方面的具体要求,除非MVC-4提供了可管理的默认路由选项。

坦率地说,动态路由别名在ASP.NET MVC中是一个困难的过程。使用动态约束创建单个管线可能是一个更优雅的解决方案。这需要设置一个仅与您的类别匹配的约束

routes.MapRoute(
    "Product",
    "{alias}/{pageNumber}",
    new { controller = "Products", action = "Choose", alias = UrlParameter.Optional, pageNumber = 1 },
    new { alias = new ProductOptionCondition() } );

上面的动态自定义分页使用动态路由别名选项。你到底做了什么。您能解释一下这方面的具体要求吗,除非MVC-4提供了可管理的默认路由选项。

谢谢,问题是我们正在使用开发人员友好的路由(英语、有组织的等)构建网站客户端可以通过管理界面更改这些路由以满足其需要,例如~/account/register路由,他可能需要别名~/register新帐户(但使用不同的语言)。所有路由都需要是动态的,因为它们可能会非常频繁地更改。MVC使用了大量反射。路由是帮助确定方法的过程。如果您使用反射重新命名或别名这些方法中的任何一种,那么这可能没有问题。谢谢,问题是我们正在使用开发人员友好的路线(英语、有组织的等等)构建网站客户端可以通过管理界面更改这些路由以满足其需要,例如~/account/register路由,他可能需要别名~/register新帐户(但使用不同的语言)。所有路由都需要是动态的,因为它们可能会非常频繁地更改。MVC使用了大量反射。路由是帮助确定方法的过程。如果使用反射重新命名或别名这些方法中的任何一个,那么这可能没有问题。