代码隐藏的新页面中找不到ASP.NET页面错误

时间:2016-12-08 04:14:37

标签: c# asp.net .net iis code-behind

我固有的一个大型ASP.NET Web表单应用程序,并尝试将新的test.aspx页面添加到新创建的文件夹 - test。

Test.aspx文件:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Test.aspx.cs" Inherits="Test" %>

test.aspx.cs:

using System;

public partial class Test: System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write("This is a test");
    }
}

在我的web.config文件中,我可以让任何人都可以访问Test文件夹。

  <location path="Test">
    <system.web>
      <authorization>
        <allow users="*" />
      </authorization>
    </system.web>
  </location>

当我使用https://localhost/Test/Test.aspx在我的开发机器中访问它时。它工作正常。但是在我部署到我的服务器之后。我收到错误404 - 当我执行https://myserver/Test/Test.aspx时无法找到页面。

服务器是Windows 2008 R2。所有其他现有页面都可以正常使用,除了这个新页面。

将另一个没有代码的新页面Test1.aspx放在同一个Test文件夹中。

<script language="c#" runat="server">
public void Page_Load(object sender, EventArgs e)
{
  Response.Write("hello, world!");
}
</script>

https://myserver/Test/Test1.aspx。它让我回报“你好,世界!”。

也可以访问同一文件夹中的任何图像文件。 https://myserver/Test/test.gif

带有代码隐藏的简单新.aspx页面有什么问题?我在Windows事件日志或IIS日志中看不到任何内容。如何调试此问题?

请帮忙

1 个答案:

答案 0 :(得分:1)

从评论中移出。

CodeBehind 替换 CodeFile 解决了这个问题。

基本上,如果我们需要在部署之前在Visual Studio中编译,我们使用 CodeBehind

CodeFile and Code-Behind