【问题标题】:My: Server Error in '/' Application我的:“/”应用程序中的服务器错误
【发布时间】:2023-06-10 17:37:01
【问题描述】:

我将我的网站发布到 Staging 并且一切似乎都运行良好,直到我点击一个显示以下错误的按钮:

“/”应用程序中的服务器错误。

未找到视图“索引”或其主视图,或者没有视图引擎支持搜索到的位置。搜索了以下位置:~/Views/Page/Index.aspx ~/Views/Page/Index.ascx ~/Views/Shared/Index.aspx ~/Views/Shared/Index.ascx ~/Views/Page/Index。 cshtml ~/Views/Page/Index.vbhtml ~/Views/Shared/Index.cshtml ~/Views/Shared/Index.vbhtml

说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.InvalidOperationException:未找到视图“索引”或其主视图,或者没有视图引擎支持搜索的位置。搜索了以下位置:~/Views/Page/Index.aspx ~/Views/Page/Index.ascx ~/Views/Shared/Index.aspx ~/Views/Shared/Index.ascx ~/Views/Page/Index。 cshtml ~/Views/Page/Index.vbhtml ~/Views/Shared/Index.cshtml ~/Views/Shared/Index.vbhtml

其次,我在发布到 Release 的另一个网站上遇到了同样的错误。该页面的其中一个链接向我显示以下错误:

“/”应用程序中的服务器错误。

未找到“取消订阅”视图或其主视图,或者没有视图引擎支持搜索到的位置。搜索了以下位置:~/Views/Midpath/Unsubscribe.aspx

~/Views/Midpath/Unsubscribe.ascx

~/Views/Shared/Unsubscribe.aspx

~/Views/Shared/Unsubscribe.ascx

~/Views/Midpath/Unsubscribe.cshtml

~/Views/Midpath/Unsubscribe.vbhtml

~/Views/Shared/Unsubscribe.cshtml

~/Views/Shared/Unsubscribe.vbhtml

源错误:在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。

这些网站在本地机器上运行时运行良好。但是,发布这些网站后,有些文件丢失了。我可以通过 FileZilla 看到缺少一些文件,我可以将这些文件拖放到 azure 文件夹中,但我一开始不想这样做。如果每次我将网站发布到 Staging 或 Release 时此错误仍然存​​在怎么办?我的问题是为什么这些文件一开始没有与其他文件一起发布。

【问题讨论】:

    标签: c# azure publishing


    【解决方案1】:

    您可以发布到本地文件系统,而不是发布到 Azure,以便更轻松地查看丢失的文件。

    在 Visual Studio 中,您确定有问题的文件包含在项目中 - 它可能只存在于文件系统中(这就是您的本地开发版本有效的原因),但不包含在发布清单中。

    在 VS 中找到“取消订阅”文件。如果它是灰色的,请选择文件并右键单击>“包含在项目中”。 还要检查文件属性。 “构建操作”应该是“内容”

    【讨论】:

    • 感谢您的回复。我确实检查了该文件是否包含在项目中(它也没有变灰)。我转到该文件的属性,发现构建操作未设置为内容。但是,我查看了通过 web deploy 发布的其他文件的属性,并注意到它们的 Build Action 也没有设置为 Content,但它们是通过 Web Deploy 发布的。
    • 假设这是一个 c# 项目,您可以在 .csproj 中查找问题文件(在记事本中打开)并可能手动添加/编辑行,例如: