Asp.net URL 在回发时丢失页面路径

本文关键字:路径 net URL Asp | 更新日期: 2023-09-27 18:18:56

>背景:我们正在重做我们的网站并试图使其现代化。我们最初尝试使用AngularJS,但由于我们的一些用户使用不受支持的浏览器而放弃了它。我们最终只是做了VB网络表单并更新了我们网站的设计和功能。

我在使用导致回发的按钮或项目时遇到问题。当页面尝试回发时,它会命中路径,但会丢失主机名和最后一个"/"之间的所有内容

例如,我在该位置设置了一个登录页面/安全/帐户/登录.aspx

我也有一条从/Secure/Account/Login方向的路线。

因此,当您访问该页面时,您将处于:www.website.com/Secure/Accounts/Login

但是,当我单击登录按钮时,我被定向到:www.website.com/Login 不存在,所以我得到一个错误。

如果我导航到页面而不是使用路由,就会发生这种情况。因此,如果我在 www.website.com/Secure/Accounts/Login.aspx 并单击按钮,我最终会 www.website.com/Login.aspx 错误。

这不会影响根目录中的页面,只要它们不使用路由属性。不过,我们有一些页面使用路由属性,但存在相同的问题。

我们在带有路由的根目录中有页面/Category.aspx/类别/{属性 1}/{属性 2}/为页面配置。

如果我在页面上 www.website.com/Category/Attribute1/Attribute2 当我单击回发按钮时,我最终会 www.website.com/Attribute2 错误。

Asp.net URL 在回发时丢失页面路径

这个问题最终变成了我们使用 Angular 时非常小的代码片段

在我们的母版页上.aspx我们包含了以下行:

<base href="/">

删除我们甚至不再需要的这一行解决了这个问题。