Visual Studio c# ASP.NET无法找到资源,但返回的路径错误

本文关键字:资源 返回 错误 路径 Studio ASP NET Visual | 更新日期: 2023-09-27 18:07:29

如果这是一个基本的问题,我很抱歉,但请允许我问一下。

所以我有三个网页。

/Project/MainPages/Default.aspx
/Project/Forum/Forum.aspx
/Project/Accounts/Login/Login.aspx

我使用html href在页面之间传输。问题是,只要我不在登录页面,我可以自由地在页面之间转移。但是,一旦我移动到登录页面,并试图移动到另一个页面,如主页或论坛,它返回我的资源未找到,与路径:/项目/账户/主页/违约。aspx或/Project/Accounts/Forum/Forum。

我已经检查了我的照片

<li><a href="../Main Pages/Default.aspx">Home</a></li>
<li><a href="../Forum/Forum.aspx">Forum</a></li>
<li><a href="../Account/Login/Login.aspx">Log In</a></li>

^这些都放在我的主页上。当然,所有的页面将有这些链接,如果他们被引用到母版页。顺便说一下,链接是在我"选择url"并指定每个web文件的位置时生成的。

是否与登录页面的验证问题有关?只需添加一点,它包含红色标签,用于在提交登录按钮之前检查用户是否输入了正确的详细信息格式。

登录页面包含登录和注册选项。但是,Signup只将其重定向到注册页面。

Visual Studio c# ASP.NET无法找到资源,但返回的路径错误

您正在使用的..是指"上一个文件夹"。

因此,如果您进入/Project/MainPages并执行..,它将解析到项目根/Project,这很好。

然而,当你在/Project/Accounts/Login和使用..,你回到/Project/Accounts,而不是/Project。所以你的Main PagesForum文件夹是不可见的(因为你的一个文件夹太远了)。

要解决这个问题,不要使用相对路径,而是使用从项目根目录开始的绝对路径:

<li><a href="~/Main Pages/Default.aspx">Home</a></li>
<li><a href="~/Forum/Forum.aspx">Forum</a></li>
<li><a href="~/Account/Login/Login.aspx">Log In</a></li>

或者,仅从Login页面返回层次结构中的另一个文件夹以找到其他两个页面:

<li><a href="../../Main Pages/Default.aspx">Home</a></li>
<li><a href="../../Forum/Forum.aspx">Forum</a></li>
<li><a href="../Account/Login/Login.aspx">Log In</a></li>