Asp.net 如何制作没有文件扩展名的ASPX网页?
我注意到stackoverflow.com的页面上没有文件扩展名。我如何使用aspx网站做到这一点?URL实际上并不指向文件。他们使用URL重写规则将URL转换为数据库查询,并将输出反馈到指定页面(其URL未显示) 编辑:进行澄清 SO使用MVC,因此url指向特定的控制器操作(带或不带参数,取决于页面)。该操作运行一些代码来获取数据或其他内容,并将其传递到相应的视图,该视图基本上是一个html模板,用于填充操作提供的信息并呈现页面。Asp.net 如何制作没有文件扩展名的ASPX网页?,asp.net,url,Asp.net,Url,我注意到stackoverflow.com的页面上没有文件扩展名。我如何使用aspx网站做到这一点?URL实际上并不指向文件。他们使用URL重写规则将URL转换为数据库查询,并将输出反馈到指定页面(其URL未显示) 编辑:进行澄清 SO使用MVC,因此url指向特定的控制器操作(带或不带参数,取决于页面)。该操作运行一些代码来获取数据或其他内容,并将其传递到相应的视图,该视图基本上是一个html模板,用于填充操作提供的信息并呈现页面。 他们使用MVC,这里有一篇来自Scott Guthrie的精
他们使用MVC,这里有一篇来自Scott Guthrie的精彩文章:
它涵盖了所有场景:IIS 6、IIS7、使用第三方URL重写工具等。堆栈溢出使用ASP.NET MVC,它可以立即清除URL 基本上,您需要的是一种将干净的URL映射到一个标准的.NET URL,并将额外的“目录”作为参数传入。e、 g.重写/blog/post no one to/blog.aspx?id=post no one 新的IIS有一个重写插件,如果您想使用传统的ASP.NET执行此操作,它将为您执行此操作: 或者您也可以通过覆盖HttpModule并在其中进行重写来实现自己的功能。下面是一个复杂的例子:
正如一些人提到的,使用MVC附带的URL路由引擎也是如此。他们实际上已经通过CodePlex提供了代码,因此您可以在基于webforms的ASP.NET站点中使用它 Phil Haack对如何做到这一点有一个很好的总结:
它包括一些示例、链接等,这些应该有助于您入门。如果您仍然想使用ASP.Net而不使用MVC路由(MVC非常棒,顺便说一句),您可以使用HTTP处理程序路由请求
嗯。某种程度上。它实际上调用一个控制器操作方法,该方法可能执行db查询并呈现与url相关的特定视图。这怎么可能是可接受的答案?这完全是胡说八道。:)