gpt4 book ai didi

c# - apiController中不存在的 Controller 的自定义错误页面

转载 作者:行者123 更新时间:2023-12-03 07:53:29 25 4
gpt4 key购买 nike

我已经创建了带有MVC 5 Controller 的MVC Web API,用于管理CRUD操作。

这是我的API Controller 的代码段:

 public class UserController : ApiController
{// GET api/<controller>
public IEnumerable<User> GetAllUsers()
{
UserRepository urepo = new UserRepository();
return urepo.UserList(0);
}

public User GetUserByID(int userID)
{
UserRepository urepo = new UserRepository();
var userDetails = urepo.UserList(userID);

return (from n in userDetails where n.UserId == userID select n).SingleOrDefault();
} }

这是我的WebAPIconfig文件
public static void Register(HttpConfiguration config)
{
// Web API configuration and services

// Web API routes
config.MapHttpAttributeRoutes();

config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}

当我从URL访问此 Controller 时,请说 localhost/api/User/GetAllUsers
它会按预期返回所有用户。

但是,如果我尝试以其他方式访问,请说 localhost/api/User 不存在,它将抛出文件未找到错误并显示默认错误页面。

我需要的是代替此默认错误页面,需要显示自定义错误页面。
如何做到这一点?

最佳答案

假设您正在使用ASP.NET Web API框架开发HTTP RESTful应用程序。在此应用程序中,您需要在集中位置处理HTTP 404错误。
该博客可能会帮助您找到所需的内容。

Handling HTTP 404 Error in ASP.NET Web API

关于c# - apiController中不存在的 Controller 的自定义错误页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44821082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com