dan*_*dan 6 c# asp.net asp.net-mvc-4 asp.net-web-api
我正在同一个域中使用WebApi2实现MVC 5应用程序.我现在的问题是如何处理WebApi中的错误404.我在WebApi中使用路由.
[RoutePrefix("myapi")]
public class MyApiController : ApiController
{
[Route("value")]
public string myvalue()
{
return "value";
}
}
Run Code Online (Sandbox Code Playgroud)
现在我有我的url "/myapi/value"返回值字符串.问题是我请求"/myapi/value/bla/bla" 或任何不在我的API中的URL,它返回错误404.
我试过这个链接http://weblogs.asp.net/imranbaloch/handling-http-404-error-in-asp-net-web-api,它只适用于WebApi项目,但不适用于MVC + WebApi项目.
请帮忙.TIA
更新:
请仔细阅读!!!!
如果您未在WebApi中处理404,这将是默认页面.它包括你的物理路径.
更新:
我认为以下内容对如何为 WebApi 2+ 项目实现错误处理有更好的描述:http://www.asp.net/web-api/overview/error-handling/web-api-global-error-handling。
当我在同一个项目中组合 MVC 和 WebApi 时,我的项目中遇到了两个问题。
首先是我对正常 MVC 页面的错误处理不再起作用。为了解决这个问题,我首先通过 MVC 控制器路由初始化了 WebApi 路由,并在 web.config 中进行了一些小的调整,如您的帖子中所述。
其次,如果您想处理无效的 webapi 路由,例如正确的目录但具有无法解析的错误值。尝试以下链接的“全局错误处理”部分中的解决方案:http://weblogs.asp.net/jongalway/looking-at-asp-net-mvc-5-1-and-web-api-2- 1-第 4 部分-web-api-help-pages-bson-and-global-error-handling
| 归档时间: |
|
| 查看次数: |
4813 次 |
| 最近记录: |