C# 在swashbuckle中编辑不同管线的swagger定义
在我们的API中有两个端点,一个端点用于创建资源,另一个端点用于更新资源。我们希望为这两个操作重用相同的模型,但如果端点是PUT端点,则删除swagger定义中的一些属性 考虑此模型以创建用户:C# 在swashbuckle中编辑不同管线的swagger定义,c#,.net-core,swagger,C#,.net Core,Swagger,在我们的API中有两个端点,一个端点用于创建资源,另一个端点用于更新资源。我们希望为这两个操作重用相同的模型,但如果端点是PUT端点,则删除swagger定义中的一些属性 考虑此模型以创建用户: /// <summary> /// Describes a User /// </summary> public class User { /// <summary> /// Given name of the user /// </s
/// <summary>
/// Describes a User
/// </summary>
public class User
{
/// <summary>
/// Given name of the user
/// </summary>
public string FirstName { get; set; }
/// <summary>
/// Last name of the user
/// </summary>
public string LastName { get; set; }
/// <summary>
/// Email address
/// </summary>
public string EmailAddress { get; set; }
}
通过向模型中的属性添加属性,我们希望在SwaggerGeneration中创建一个过滤器,以删除所有未标记为UpdateAttribute
的属性。我已经看过了ipParameterFilter
、IOperationFilter
和ISchemaFilter
,但它们似乎都不符合我们的需要
有什么是我忽略的吗?有人这样做过吗
/// <summary>
/// Describes a User
/// </summary>
public class User
{
/// <summary>
/// Given name of the user
/// </summary>
[Updatable]
public string FirstName { get; set; }
/// <summary>
/// Last name of the user
/// </summary>
[Updatable]
public string LastName { get; set; }
/// <summary>
/// Email address
/// </summary>
public string EmailAddress { get; set; }
}