我有一个带有网站和几个项目库的ASP.NET5解决方案.我使用的是MVC6和Entity Framework7.在本地,这个应用运行得很好,直到今天,它还运行在作为Azure网站部署的Azure上.

但今天在Azure上进行最新部署后,我在启动时遇到了这样的错误500(在本地仍能正常工作):

在此处输入图像描述

我试图通过以下方式了解更多细节:

  • 使用中间件诊断
  • 在web中添加customError/httpError设置.配置文件
  • 下载生成的DetailedError页面

似乎在启动/配置步骤中发生了错误/异常,但我仍然会看到没有详细信息的通用错误页面.即使是在服务器上生成的版本(DetailedErrors文件夹),我也得到了以下信息:

在此处输入图像描述

我启用了失败的请求跟踪,但仍然没有有用的信息:

在此处输入图像描述

即使我在Startup/Configure中删除了代码,并按照建议添加了一个try/catch,我也会在没有详细信息的情况下得到同样的错误.这似乎是一个配置/编译问题,但在没有任何信息的情况下很难调试.

推荐答案

在RC1(也许是Beta8)中,显然应该使用:

app.UseDeveloperExceptionPage();

显然只有当app.Properties["host.AppMode"]等于"development"时才有效.

但这对我不起作用.我收到的错误消息是"An error occurred while starting the application",我发现任何给定的配置都无法解决这个问题,因为错误发生在配置执行之前.

不知何故,发布目标文件夹一定是在发布过程中损坏了,因为我找到了deleting the entire deployment directory and re-publishing resolved the problem个.

否则,这里是参考:http://docs.asp.net/en/latest/fundamentals/diagnostics.html

Asp.net相关问答推荐

将 ASP.NET 成员资格表添加到我自己的现有数据库中,还是应该配置一个单独的 ASP.NET 成员资格数据库?

Anti-Forgery Token 适用于不同的基于声明的用户

Response.Redirect 使用 ~ 路径

多行文本框多个换行符

Twitter bootstrap glyphicons 不会出现在发布模式 404 中

Jquery asp.net 按钮单击事件通过 ajax

aspx 文件中的 if 语句

问题映射 HttpHandler --> HTTP Error 404 Not Found

对于每个请求,RestClient 应该是单例还是新的

页面在谷歌浏览器中加载两次

如何从 SQL Server 2008 本身获取客户端 IP 地址?

.NET 上的 HTTP/2(HTTP2 或 SPDY)

如何获取正在访问 ASP.NET 应用程序的当前用户?

使用 Ninject OWIN 中间件在 OWIN 启动中注入 UserStore

WebForm_PostBackOptions 文档

如何在我自己的方法中模仿 string.Format()?

将 html 标记从 jquery 发布调用发送到 asp.net 页面时,从客户端检测到潜在危险的 Request.QueryString 值

ASP.NET - 从静态方法/静态类访问会话?

IronRuby死了吗?

静态变量是线程安全的吗? C#