📅  最后修改于: 2023-12-03 15:29:30.276000             🧑  作者: Mango
ASP.NET MVC-Web API是微软针对Web API设计的一种框架技术,它是一种以RESTful方式提供HTTP服务的架构风格,能够使你更容易开发和管理Web API服务。
相比于其他的Web框架,ASP.NET MVC-Web API具有以下优点:
让我们从创建一个新的ASP.NET Web API项目开始。
打开Visual Studio,选择“新建项目”或者 “创建新项目”。
在“创建新项目”对话框中,选择 ASP.NET Web 应用程序 项目类型。确保 ASP.NET Web API 已选中。
在“新建 ASP.NET Web 应用程序”对话框中,选择空项目。如果选择了MVC项目,则会同时创建视图文件,这不是我们所需要的。
控制器负责处理不同请求类型,然后返回相应的结果输出。
在项目中右键单击 “控制器(Controller)” 文件夹,然后在上下文菜单中选择 “WebAPI控制器类(Empty)”。
输入名称并选择“空的 API 控制器(空)”模版,然后单击添加。
在控制器的Action
中,执行业务逻辑处理,然后返回结果。
public class UserController : ApiController
{
[HttpGet]
public IHttpActionResult Get(int id)
{
// 查询用户
var user = _userService.Get(id);
if (user == null)
{
return NotFound();//返回404
}
return Ok(user);//返回成功信息
}
[HttpPost]
public IHttpActionResult Post([FromBody] User user)
{
//添加用户
_userService.Add(user);
return Ok(user); //返回添加成功信息
}
}
可以看到,Get
方法使用了拦截器注解[HttpGet]
,表示调用该API时应该使用HTTP GET
方法来获取用户信息。
Post
方法使用了拦截器注解[HttpPost]
,表示调用该API时应该使用HTTP POST
方法来添加用户信息。
Ok()
方法表示返回请求成功信息,NotFound()
方法表示没有找到页面。
在ASP.NET MVC-Web API框架中,路由(Routing)是负责将请求映射到控制器的关键模块,我们需要在项目中配置路由,以便ASP.NET知道如何处理URL。
打开App_Start\RouteConfig.cs文件。
找到 WebApiConfig.Register(config);
,这是ASP.NET MVC-Web API配置路由的地方。
添加自定义路由规则,例如:
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "UserApi",
routeTemplate: "api/user/{id}",
defaults: new { controller = "user", id = RouteParameter.Optional }
);
}
ASP.NET MVC-Web API是微软推出的一款用于Web API设计的框架技术,具有简单易用、易于扩展、可重用性强等优势,是开发Web API的好选择。在使用ASP.NET Web API时,需要了解路由策略,创建业务逻辑,配置路由规则等知识。