亚马逊官方网站怎么做,百度云域名,电脑优化工具,自媒体平台注册官网下载Demo下面我们就来实践一下。打开之前的项目#xff0c;并建立CompaniesController#xff1a; 这里有6个地方比较关键#xff0c;我们挨个看一下#xff1a; RESTful API 或者其它Web API的Controller都应该继承于 ControllerBase 这个类#xff08;点此查看详细的官方文档… Demo下面我们就来实践一下。打开之前的项目并建立CompaniesController 这里有6个地方比较关键我们挨个看一下 RESTful API 或者其它Web API的Controller都应该继承于 ControllerBase 这个类点此查看详细的官方文档而不是Controller这个类。 ControllerBase 类提供了很多用于处理 HTTP 请求的属性和方法。 例如ControllerBase.CreatedAtAction 返回 201 状态代码。关于ControllerBase的属性和方法的详细列表请查看官方参考文档。 [ApiController]。这个属性是应用于Controller的它其实并不是强制的但是它提供了一些帮助使得Web API的开发体验更好。详细教程请点击 [ApiController]的官方文档。在Controller上面添加了[ApiController]属性之后就会启用以下行为 要求使用属性路由Attribute Routing。也就是不能通过Startup的Configure方法统一配置路由模板。这部分的详细介绍请点击官方文档。 自动HTTP 400响应。也就是Action方法传入的model含有验证错误的时候自动触发HTTP 400响应。这部分的详细介绍请点击官方文档。 推断参数的绑定源。它将会推断出Action方法的参数到底来自哪个绑定源例如[FromBody]、[FromForm]等等。这部分的详细介绍请点击官方文档。 Multipart/form-data 请求推断。使用 [FromForm] 属性批注操作参数时[ApiController] 属性将应用推断规则它会推断 multipart/form-data 为请求的内容类型。这部分的详细介绍请点击官方文档。 错误状态代码的问题详细信息。MVC 会将错误结果状态代码为 400 或更高的结果转换为状态代码为 ProblemDetails 的结果。 ProblemDetails 类型基于 RFC 7807 规范用于提供 HTTP 响应中计算机可读的错误详细信息。这部分的详细介绍请点击官方文档。 我们需要通过构造函数注入ICompanyRepository并把它存放在一个只读的字段里面。 如果注入的ICompanyRepository的实例为null那么就抛出一个ArgumentNullException。 想要返回数据结果我们需要在Controller里面添加一个Action方法。我暂时把它的返回类型写为IActionResult详细介绍请点击官方文档。IActionResult里面定义了一些合约它们可以代表Action方法返回的结果。 我暂时只想把结果序列化为JSON格式并返回这里我new了一个JsonResult参考文档它可以做这项工作。 目前我只做了这几项最基本的工作创建Controller注入Repository创建Action方法并返回结果。下面运行一下看看报了什么错 这是因为GetCompanies这个Action方法并没有使用属性路由Attribute Routing。关于路由这部分下一篇文章再介绍。 点击原文查看博客园的博文,主要是里面有文档的链接.