0

我刚刚进入 Global.asax 以及在 WebForms 中进行 url 路由的方式。这里我与我的 default.aspx 和我的其他文件有点冲突。

我希望我的所有文件都具有友好的 url,即。mysite.com/welcome/ 等,我通过以下方式实现这一目标:

routes.MapPageRoute("root_pages", "{file}/{*action}", "~/{file}.aspx");

这样,我可以将 mysite.com/welcome.aspx 写入 mysite.com/welcome/ 并根据需要进行默认操作。但是随后我的默认路由之间发生了冲突:

routes.MapPageRoute("default", "{*action}", "~/default.aspx");

我还想在我的 default.aspx 上访问一些操作 - 但是当我这样做时似乎我不能这样做?

它会选择文件行并继续,所以我不能做 mysite.com/logout/ 这是我的 default.aspx 页面上的一个功能,在这种情况下它会寻找一个文件.. 有没有其他方法做我想做的事?所以我可以同时使用这两条路线吗?

希望你能帮助我

亲切的问候

4

1 回答 1

1

它总是会走第一条路线并顺其自然。在您的情况下,它将查找不存在的 logout.aspx。唯一的选择是使用 URL mysite.com/default/logout。

我们可以将此视为 WebForms 中 URL 路由的限制。

您可以在以下 URL 上查看我的博客系列以了解 Web 表单中的 URL 路由。

http://karmic-development.blogspot.in/2013/10/url-routing-in-aspnet-web-forms-part-1.html

http://karmic-development.blogspot.in/2013/10/url-routing-in-aspnet-web-forms-part-2.html

这个系列还有更多文章。

于 2013-10-19T10:35:06.183 回答