欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET Core自动生成小写破折号路由的实现方法

程序员文章站 2022-06-25 09:26:41
默认情况下,asp.net core使用如http://localhost:5000/homeindex类的大驼峰路由。但是如果想使用小写的路由,并且这些路由用破折号分隔:http://localho...

默认情况下,asp.net core使用如 http://localhost:5000/homeindex 类的大驼峰路由。但是如果想使用小写的路由,并且这些路由用破折号分隔:http://localhost:5000/home-index它们比较常见且一致。

1、如何生成小写的路由可以这样设置

2、生成带破折号并且小写的路由可以这样设置

似乎上面使用特性路由可以解决这个问题。但是我不想使用,因为每个action都要手动去设置,太繁琐也很容易出错。

我想要的效果是在程序中写个扩展类做到可配置处理。

3、解决方案

以下支持asp.net core version>=2.2

要做到这一点,首先创建slugifyparametertransformer类应该如下所示

3.1 对于asp.net core2.2 mvc:

在startup中confiregeservices这样配置

路由如下配置:

3.2  对于asp.net core2.2 web api:

在startup中confiregeservices这样配置

3.3 对于asp.net core>=3.0 mvc:

在startup中confiregeservices这样配置

路由如下配置:

3.4 对于asp.net core>=3.0 web api:

在startup中confiregeservices这样配置

3.5 对于asp.net core>=3.0 razor pages:

在startup中confiregeservices这样配置

这样会使/sys/userlist路由变为/sys/user-list

3.6 对于上面mvc项目,路由模板要调整很多,其实还可以通过实现icontrollermodelconvention来实现。

在startup中confiregeservices这样配置

译文:

译者:realyrare

出处:

以上就是asp.net core自动生成小写破折号路由的实现方法的详细内容,更多关于asp.net core生成小写破折号路由的资料请关注其它相关文章!