.NET Core创建API项目

新建项目 类型:ASP.NET Core Web API
Web API 控制器通常应派生自 ControllerBase 而不是 Controller。 Controller 派生自 ControllerBase,并添加对视图的支持,因此它用于处理 Web 页面,而不是 Web API 请求。 如果同一控制器必须支持视图和 Web API,则派生自 Controller。
API接口返回值类型:https://learn.microsoft.com/zh-cn/dotnet/api/microsoft.aspnetcore.mvc?view=aspnetcore-7.0
示例:

using Microsoft.AspNetCore.Mvc;
using NetCoreWebApiTest.Common;

namespace NetCoreWebApiTest.Controllers
{
    [ApiController]
    [Route("[controller]")]
    public class TestController : ControllerBase
    {
        //日志
        private readonly ILogger<TestController> _logger;
        public TestController(ILogger<TestController> logger)
        {
            _logger = logger;
        }

        /// <summary>
        /// /Test/Index
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public JsonResult Index()
        {
            _logger.LogInformation("/Test/Index " + DateTime.Now.ToString());
            ApiResult<string> result = new ApiResult<string>()
            {
                Data = "123456",
                ErrorCode = "0",
                Message = "success"
            };
            return new JsonResult(result);
        }
    }
}

API接口的参数标注
[FromBody] 请求正文
[FromForm] 请求正文中的表单数据
[FromHeader] 请求标头
[FromQuery] 请求查询字符串参数
[FromRoute] 当前请求中的路由数据
[FromServices] 作为操作参数插入的请求服务

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章