基于c#的Web应用程序中的路由
本文关键字:路由 应用程序 Web 基于 | 更新日期: 2023-09-27 18:02:13
与其说是一个一般性的问题,不如说是一个"你将如何处理它"的问题,所以如果它不属于这个特定的堆栈,那么很抱歉。然而,我很好奇,这是如何在web框架建立在。net。
Spring和ASP都有路由的概念。在Rails中,我们有一个路由文件,经过一些跳跃和跳跃后由web服务器处理。在PHP中,我们有。htaccess文件声明,这是index.php文件所在的位置,运行所有内容。但是如果要构建一个非常基本的c# web框架,他们将如何处理路由?有没有这种简单(关键字:简单)的web框架的例子,可以让我了解更多关于诸如路由之类的事情是如何处理的?
我应该声明我不是想了解如何使用路由,而是如何在基于c#的web框架中实现路由。是XML文件吗?有htaccess文件吗?
因此我要求一个小的web框架可能被用于API这样我可以更好地理解,好,这是如何实现路由在一个基于。net的web框架编写c#
在IIS中有一个处理程序映射部分,您可以在其中为您想要支持的自定义扩展指定处理程序。您可以定义自己的httphandler并在IIS或web.config中注册它们。
就Web API或MVC而言,框架提供了无扩展url处理程序。你可以在网上找到他们的参考资料。它使用您在应用程序启动时提供的路由映射来查找URL的匹配路由。它使用各种约定将最佳操作匹配到URL。同样,如果你想自己实现处理程序,你可以自定义约定或配置。
更多信息见https://msdn.microsoft.com/en-us/library/cc668201%28v=vs.140%29.aspx
路由在asp.net中被内置到你的代码中。有几种方法可以定义路由。如果你要使用API路由,你可以在控制器和动作上使用route属性来定义它,也可以在路由配置类中定义它们。开箱即用的asp.net模板是了解它们如何工作的一个很好的起点。也可以在MSDN网站上阅读有关路由的信息https://msdn.microsoft.com/en-us/library/cc668201(v=vs.140).aspx
。htaccess是Apache的一个概念,所以它并不真正适用于通常在IIS上运行的c# web应用程序。
基于c#的web框架中的路由有许多不同的处理方式。有些使用XML,有些不使用。内置在ASP中的路由机制。. NET MVC在方法/控制器上使用命名约定和可选属性(属性路由)。如果你要实现自己的路由,你可以编写一个HTTP模块来检查传入的url并将它们与给定的重写规则集进行比较。这些重写规则可以存储在XML文件、文本文件、数据库或任何你想要的地方。