Asp.net mvc 无法在Azure云服务中查看应用程序错误

Asp.net mvc 无法在Azure云服务中查看应用程序错误,asp.net-mvc,azure,Asp.net Mvc,Azure,最后我将我的MVC应用发布到Azure云服务。我的数据库也在上面。在将WindowsAzure项目添加到我的解决方案并将我的2个项目(模型和web)添加为角色后,我可以在本地运行该应用程序 但当我运行URL时,我得到错误: 说明:服务器上发生应用程序错误。此应用程序的当前自定义错误设置阻止远程查看应用程序错误的详细信息(出于安全原因)。但是,本地服务器上运行的浏览器可以查看它 public static void RegisterGlobalFilters(GlobalFilterCol

最后我将我的MVC应用发布到Azure云服务。我的数据库也在上面。在将WindowsAzure项目添加到我的解决方案并将我的2个项目(模型和web)添加为角色后,我可以在本地运行该应用程序

但当我运行URL时,我得到错误:

说明:服务器上发生应用程序错误。此应用程序的当前自定义错误设置阻止远程查看应用程序错误的详细信息(出于安全原因)。但是,本地服务器上运行的浏览器可以查看它

    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute()); 
    }
所以我设置并重新发布,但仍然得到相同的错误

我需要强迫Azure告诉我发生了什么并揭示错误,有人知道吗


否Azure云服务中没有内置日志。您可以实现自己的,但这需要一些实现。在我的解决方案中,我创建了一个自定义错误页面。我的web配置如下所示:

<customErrors mode="On" defaultRedirect="~/error/Error">
 ...
</customErrors>

这篇文章和这个答案也涉及到日志错误。如果你想走那条应该让你开始的路线:


否Azure云服务中没有内置日志。您可以实现自己的,但这需要一些实现。在我的解决方案中,我创建了一个自定义错误页面。我的web配置如下所示:

<customErrors mode="On" defaultRedirect="~/error/Error">
 ...
</customErrors>

这篇文章和这个答案也涉及到日志错误。如果你想走那条应该让你开始的路线:


检查您没有用转换覆盖web.config设置。MVC项目的Visual Studio 2012模板会自动将此行添加到web.config.release文件中:

发布应用程序时,您的web.config可能正在转换

编辑:此外,您可能想查看ELMAH,它是一个很棒的日志记录工具,很容易添加到您的项目中,并且可以让您查看每个错误的信息:

    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute()); 
    }
  • 项目页面:
  • Hanselman的解释:
  • Nuget软件包:

检查您没有用转换覆盖web.config设置。用于MVC项目的Visual Studio 2012模板会自动将此行添加到web.config.release文件中:

发布应用程序时,您的web.config可能正在转换

编辑:此外,您可能想查看ELMAH,它是一个很棒的日志记录工具,很容易添加到您的项目中,并且可以让您查看每个错误的信息:

    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute()); 
    }
  • 项目页面:
  • Hanselman的解释:
  • Nuget软件包:

你说的是你设定了。。。在你的网页配置中?是的,这就是为什么我现在撞到了这堵砖墙。我发布了cloudService项目,其中包含我的web项目作为角色。但我现在想知道如何检查整个解决方案,包括我的web.config。我想,如果我能以某种方式查看真正的错误消息是什么,是否有Azure云服务的日志,我已经浏览了所有在线菜单,看不到任何东西你说你设置了。。。在你的网页配置中?是的,这就是为什么我现在撞到了这堵砖墙。我发布了cloudService项目,其中包含我的web项目作为角色。但我现在想知道如何检查整个解决方案,包括我的web.config。我想如果我能以某种方式查看真正的错误消息是什么,Azure云服务中是否有日志,我已经浏览了所有在线菜单,看不到任何东西,一些非常错误的东西,当我实现这一点时,我只会得到相同的错误,没有任何变化。我无法判断azure服务中发生了什么,令人沮丧的是,您是否仍然有过滤器;在Global.RegisterGlobalFilters中?我没有在Global.RegisterGlobalFilters中设置任何内容,是吗?我需要强制Azure显示错误消息。自定义错误设置为Off在Azure中没有任何区别。让我觉得它好像看不到web.config或者它在使用其他东西。当它说“发布成功”时,似乎没有什么其他方法可以回答,请让我知道是否这样做了。谢谢,有一些非常错误的地方,当我实现这一点时,我只会得到相同的错误,没有任何变化。我无法判断azure服务中发生了什么,令人沮丧的是,您是否仍然有过滤器;在Global.RegisterGlobalFilters中?我没有在Global.RegisterGlobalFilters中设置任何内容,是吗?我需要强制Azure显示错误消息。自定义错误设置为Off在Azure中没有任何区别。让我觉得它好像看不到web.config或者它在使用其他东西。当它说出版成功时,人们似乎没有什么别的办法可以回答,如果可以,请告诉我。如何停止在web配置的发布版本中添加此行?是否有web.release.config文件?如何停止在web配置的发布版本中添加此行?是否有web.release.config文件?