在模式中重新使用DTO时,在NSwag中显示不同的示例值

问题描述

我想为同一个复杂对象生成不同的示例值,例如:

public class RequestDto
{
  // ...

  public class EntityDto SomeEntity {get; set;}
  public class EntityDto OtherEntity {get; set;}

  // ...
} 

public class EntityDto
{
  // ...

  /// <example>
  /// TOM
  /// </example>
  public string Name {get; set; }

  // ...
}

对于OtherEntity,我希望示例值在生成的Open API规范中显示为“ MARY”。

有人解决过这个问题,可以分享一些指导吗?预先非常感谢。

解决方法

EntityDto.Name是一个属性,可以举一个例子,您可以在其中添加MARY。

或者您可以将示例摘要直接添加到SomeEntity和OtherEntity定义中,如下所示:

/// <example>
/// TOM
/// </example>
public EntityDto SomeEntity {get; set; }


/// <example>
/// MARY
/// </example>
public EntityDto OtherEntity {get; set; }

和名称属性将定义为:

/// <example>
/// Name of entity.
/// </example>
public string Name {get; set; }