aspx页面作为页面的参数

时间:2016-10-12 11:48:03

标签: c# asp.net

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

网址如下:http://localhost:60729/default.aspx/default.aspx 或者http://localhost:60729/default.aspx/account.aspx

现在我的问题是在本地环境中测试时,它显示未找到资源 enter image description here 但是当在IIS服务器上托管时,它不会显示任何资源错误。 enter image description here

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

1 个答案:

答案 0 :(得分:0)

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

  1. 转到属性 - >网页并检查/编辑localhost的端口(在Servers - > Project URL下)
  2. 在解决方案资源管理器中单击您的解决方案,然后在下面的属性窗口中查看网址。
  3. 如果仍然无效:请尝试使用以下代码编辑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>

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

    修改

    所以我重新创建了你的页面(没有代码隐藏),这是结果: Your re-created default page

    它完全适用于localhost。 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>

    我建议,如果没有任何工作,重建你的项目。这是现在唯一的方法。