您的位置:首页 > 娱乐 > 八卦 > 正能量晚上看的网站2021_ui设计比较成功的网站页面_网站流量排名_网络推广方案有哪些

正能量晚上看的网站2021_ui设计比较成功的网站页面_网站流量排名_网络推广方案有哪些

2025/1/3 16:17:17 来源:https://blog.csdn.net/weixin_42031602/article/details/143244815  浏览:    关键词:正能量晚上看的网站2021_ui设计比较成功的网站页面_网站流量排名_网络推广方案有哪些
正能量晚上看的网站2021_ui设计比较成功的网站页面_网站流量排名_网络推广方案有哪些

路由模板负责根据规则生成URL,从而使得请求可以正常访问到资源。

总之就是——》》》

规范如何写一个url,并且命名以方便进行管理。

在Asp.net core中的Http管道机制,UseRouting()和 UseEndpoints()这两个中间件来实现整个路由系统。关于asp.netCore中的路由的原理,可以看这篇文章。

在Web主机启动后,会进行路由配置,首先就是根据路由配置的URL模板去生成URL,并结合Controller和Action为终结点。

这个URL模板是在UseEndPoints()方法委托参数MapControllerRoute()方法配置的。

模板参数

在MapControllerRoute()方法中

(1). Name 称为路由模板的名称。
(2). Pattern 称为路由模板的 URL 模式,Pattern 本身的含义就是模式,这是在ASP.NET Core 3.x 及高版本修改后的参数名称。

(3). constrains:路由约束

。。。

在一个Web应用中,可以配置多个路由模板来适应多种URL,其中只需要Name不同即可。

URL模式

组成部分

(1). 一对花括号{}:必须存在,表示一个占位符。
(2). 路径分隔符:/,由分隔符隔开的称为段,必须存在路径分隔符,默认情况下控制器、操作和参数之间必须使用/作为路径分隔符,参数后面可以使用*来实现任意的 URL 段_>任意格式的URL
(3). 路由参数:如 controller、action,由于 MVC 中路由就是根据控制器和操作定位资源的,所以这 2 个参数必须存在,也可以有其它的路由参数。如controller=Home,controller 就是路由参数。
(4). 路由参数值:路由参数后面使用=赋值,这个值就是数由参数值。如controller=Home,Home 就是路由参数值。

(5). 可选参数:使用 ?跟随的称为可选参数,可有可无。如 id?表示 id 参数是可选的。

路由参数

必选参数

从这个路由模板来看,{controller}和{action}是约定的,不可省略或修改成别的名称

(1). {controller}表示控制器占位符,其中 controller 替换为控制器的具体名称,如 Home,就表示 HomeController 控制器,去掉后缀。
(2). {action}表示操作占位符,其中 action 替换为操作的具体名称,也就是控制器下操作方法的名称。如 Index,就表示 Index()操作方法。
(3). 同时,还给 controller 指定默认的值是 Home,action 指定默认值是Index。当在 URL 上未指定控制器和操作时,默认使用 Home 和 Index 访问。

当没有配置的时候,可能会返回一个未响应的页面。

可选参数

顾名思义,就是可以没有这个参数。

对于路由模板中的{id?}表示可选参数,也就是 id 这个参数可以有,也可以没有。

我们可以看一下默认的控制器中的方法

这个是在home控制器下,由于在 URL 上,id 参数是放在/Home/Index/后面的,所以就认为
id 是 Index()方法的参数,可以是任意类型。

在asp.net core的操作是——>

url——>控制器——>控制器中的方法——>参数绑定——>razor页面去将参数进行显示

比如到最后的razor中是

这样就将url中的id直接赋值到前端UI中了。

关于路径分隔符,固定URL段和通配符

对于正常的 URL 地址,都是由 / 分隔符将路由段分开的,因此——————>
在 URL 默认的模式中,也是使用 / 将控制器、操作、参数分开

使用规范的/ 

使用固定URL段

使用通配符*

使用通配符的注意事项

(1). 必须在{}内使用。
(2). 必须放在路由参数的前面。
(3). 路由参数不能是可选的。
(4). 必须是 URL 模式中最后一个 URL 段。

今天就分享到这里。同时欢迎关注gzh——》上位机PLC自动化技术研究

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com