如何让Azure让我的WebAPI控制器返回404?

时间:2014-01-03 22:13:52

标签: azure asp.net-web-api azure-web-roles

我有一个WebAPI控制器,当找不到实体时返回空404响应,当它找到时返回200。这在我的本地DevFabric中运行时工作正常,但是在部署时我获得500而不是404.200用例在两种环境中都有效。

    public IHttpActionResult Get(int id)
    {
        var result = getEntity(id);

        if (result == null)
        {
            return NotFound();
        }

        return Ok(result);
    }

为什么我在部署到Azure时没有获得404?

1 个答案:

答案 0 :(得分:2)

根据您提供的信息级别,我建议您从Azure Webrole远程调试您的应用程序 - http://antirandom.com/2012/09/20/remotely-debugging-a-windows-azure-webrole-via-visual-studio-debugger/

据我所知500是您的Web API内部服务器服务器。所以调试可以帮助你找到答案。您还可以启用Azure Web角色日志记录 - http://msdn.microsoft.com/en-us/library/windowsazure/dn186185.aspx