【发布时间】:2018-10-22 04:28:03
【问题描述】:
ASP.NET Core 2.2 引入了一个使用Parameter transformer 抑制路由 url 的选项,如下所示:
routes.MapRoute(
name: "default",
template: "{controller=Home:slugify}/{action=Index:slugify}/{id?}");
我做了同样的事情如下:
routes.MapRoute(
name: "default",
template: "{controller:slugify}/{action:slugify}/{id?}",
defaults: new { controller = "Home", action = "Index" });
我在ConfigureServices方法中的路由配置如下:
services.AddRouting(option =>
{
option.LowercaseUrls = true;
});
但出现以下错误:
InvalidOperationException:约束引用“slugify”无法解析为类型。使用“Microsoft.AspNetCore.Routing.RouteOptions.ConstraintMap”注册约束类型。
和
RouteCreationException:创建名为“default”和模板“{controller:slugify}/{action:slugify}/{id?}”的路由时出错。
可能我还缺少什么!请帮忙!
【问题讨论】:
标签: asp.net-core asp.net-core-routing asp.net-core-2.2