[Asp.Net WebApi]WebApi入门
Posted 厦门德仔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Asp.Net WebApi]WebApi入门相关的知识,希望对你有一定的参考价值。
前言
下午4点闲着无聊,想起群里昨天小李问到如何创建WebApi项目,
那利用摸鱼时间自学一下吧。打开度娘呗。
一、 创建WebApi项目
二、创建实体
三、创建控制器
[ApiController]
[Route("[controller]")]
public class ContactController : ControllerBase
private static readonly Contact[] contacts = new Contact[]
new Contact() ID=1,Age=20,BirthDay=Convert.ToDateTime("1988-07-5"),Name="傲娇",Sex="男",
new Contact() ID=1,Age=18,BirthDay=Convert.ToDateTime("1988-07-3"),Name="阿里斯",Sex="女",
new Contact() ID=1,Age=1,BirthDay=Convert.ToDateTime("1988-07-26"),Name="网妹",Sex="女",
new Contact() ID=1,Age=4,BirthDay=Convert.ToDateTime("1988-07-5"),Name="哈子",Sex="男"
;
private readonly ILogger<WeatherForecastController> _logger;
public ContactController(ILogger<WeatherForecastController> logger)
_logger = logger;
[HttpGet]
[Route("ContactController/GetListAll")]
public ActionResult<IEnumerable<Contact>> GetListAll()
return contacts.ToList();
[HttpPost]
[Route("ContactController/PostContactByID")]
public Contact PostContactByID(int id)
Contact contact = contacts.FirstOrDefault<Contact>(item => item.ID == id);
if (contact == null)
throw new System.Web.Http.HttpResponseException(HttpStatusCode.NotFound);
return contact;
[HttpPost]
[Route("ContactController/GetListBySex")]
public ActionResult<IEnumerable<Contact>> GetListBySex(string sex)
return contacts.Where(item => item.Sex == sex).ToList();
四、启动测试
测试:
返回对象
返回对象列表
总结
因为不熟悉:中间遇到,只允许唯一别名问题,加上特性。解决返回对象格式异常等。
群主提到安全性问题:
因为是第一次构建webapi,未启用安全认证,完全开放式。生产环境中需要token验证。后续改进。
以上是关于[Asp.Net WebApi]WebApi入门的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET WebApi 从入门到"放弃"系列---WebApi 请求路由
01Getting Started---Getting Started with ASP.NET Web API 2入门WebApi2