Web API 约定

时间:2020-04-29 14:40:13   收藏:0   阅读:107

Web API 约定

默认的约定

集将应用于 ContactsConventionController 中的所有操作:

[ApiController]
[ApiConventionType(typeof(DefaultApiConventions))]
[Route("api/[controller]")]
public class ContactsConventionController : ControllerBase
{

默认的约定集将应用于程序集中的所有操作:

[assembly: ApiConventionType(typeof(DefaultApiConventions))]
namespace ApiConventions
{
    public class Startup
    {

创建 Web API 约定

如果默认 API 约定不能满足需要,请创建自己的约定。 约定是:

响应类型

这些方法使用 [ProducesResponseType][ProducesDefaultResponseType] 属性进行批注。 例如:

C#复制

public static class MyAppConventions
{
    [ProducesResponseType(StatusCodes.Status200OK)]
    [ProducesResponseType(StatusCodes.Status404NotFound)]
    public static void Find(int id)
    {
    }
}

如果没有更具体的元数据属性,则将此约定应用于程序集可强制实现以下内容:

命名要求

[ApiConventionNameMatch][ApiConventionTypeMatch] 属性可应用于约定方法,确定它们所要应用的操作。 例如:

C#复制

[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status404NotFound)]
[ApiConventionNameMatch(ApiConventionNameMatchBehavior.Prefix)]
public static void Find(
    [ApiConventionNameMatch(ApiConventionNameMatchBehavior.Suffix)]
    int id)
{ }

在上面的示例中:

原文:https://www.cnblogs.com/ouyangkai/p/12801724.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!