aspx页面作为页面的参数

Arj*_*jun 7 c# asp.net

这可能听起来很疯狂,但我别无选择地发布这个问题.一个测试人员提出了一个问题,其中页面作为参数传递到同一页面,它显示了奇怪的结果.

url看起来像这样:http:// localhost:60729/default.aspx/default.aspx 或者http:// localhost:60729/default.aspx/account.aspx

现在我的问题是在本地环境中测试它时显示未找到资源 在此输入图像描述 但是当在IIS服务器上托管时,它不会显示任何资源错误. 在此输入图像描述

为什么??我错过了一些基本的逻辑

Hug*_*uis 0

如果您使用模板,您可以检查路由(位于 App_start 中)。检查页面的 URL(在解决方案资源管理器中单击该页面,然后检查属性中的“浏览到 URL”部分。检查属性,让它从该页面启动(“项目”选项卡 ->“名称”属性 -> Web -> 开始操作 -> 特定页面。)。检查它是否有效以及 URL 是什么。如果仍然无效,我建议编辑端口。这可以通过 2 种方式实现。

  1. 转到属性 -> 网页并检查/编辑本地主机的端口(在服务器 -> 项目 URL 下)
  2. 在解决方案资源管理器中单击您的解决方案,然后检查下面属性窗口中的 URL。

如果仍然不起作用:尝试使用以下代码编辑 web.config 文件:

<system.webServer>
  <defaultDocument>
    <files>
      <clear />
      /* option 1 /*
      <add value="default.aspx/default.aspx" /> 
      /* option 2 /*
      <add value="default.aspx" />
    </files>
  </defaultDocument>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

另外:为什么是default.aspx/default.aspx?我认为第一个默认值中的点也可能是这里的麻烦制造者。

编辑

所以我重新创建了您的页面(没有隐藏代码),结果如下: 您重新创建的默认页面

它在本地主机上完美运行。HTML 代码:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
        This is the default page<br />
        Enter name:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <br />
        Enter Age:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
    
    </div>
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我建议,如果根本不起作用,请重建您的项目。这是现在唯一的办法了。