为什么我在Azure上的代码隐藏时遇到404错误?

时间:2014-08-22 22:42:06

标签: c# asp.net azure

我发布并回答了我自己的问题,以防它帮助其他人 - 我只花了几个小时试图找出为什么我为ASPX页面的代码隐藏得到404错误。我们已将现有网站转换为Web应用程序并发布到Azure。在localhost(IIS-Express)上测试期间网页正常工作,但在Azure上运行时抛出了404错误。

2 个答案:

答案 0 :(得分:1)

我注意到没有设计器文件,在several unsuccessful attempts之后我放弃并创建了一个新的ASPX页面,复制/粘贴了我的代码,删除了原始文件,并重命名了新文件。拥有设计器文件并没有解决问题,但其中一个posted answers有所帮助。

当网站项目转换为Web应用程序项目时,Page指令中的“CodeFile”属性必须更改为“CodeBehind”。

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

Visual Studio在您转换项目时为您执行此操作,但它错过了此页面和其他一些页面。回想起来,我原本期望Visual Studio出现构建错误或某种类型的警告,但“CodeFile”属性可能在Web应用程序中有效。

答案 1 :(得分:0)

404错误表示无法找到资源。您是否尝试在网址中加载包含localhost的网页?

这也可能是一个相对路径问题尝试打开fiddler或查看开发人员工具(F12)控制台窗口,看看被发送的url是否正确。因为它匹配您网站的根目录。