В этом методеУкажите требуемые свойства сложного объекта входного параметра в Swagger UI
/// <summary>
/// Gets activity logs.
/// </summary>
/// <param name="locationId">Location id.</param>
/// <param name="filter">Activity log filter options.</param>
/// <response code="200">OK</response>
[ResponseType(typeof(ActivityLogResponse))]
public async Task<HttpResponseMessage> FetchActivityLogs(int locationId, ActivityLogFilterOptions filter)
{
}
ActivityLogFilterOptions
имеют некоторые требуемые свойства и некоторые являются необязательными. Есть ли способ указать это в параметрах API Swagger UI?
ActivityLogFilterOptions Класс:
/// <summary>
/// Represents an activity log filter options.
/// </summary>
public class ActivityLogFilterOptions
{
/// <summary>
/// Gets or sets the device ids to which the activity logs to be fetched.
/// </summary>
public string DeviceIds { get; set; }
/// <summary>
/// Gets or sets the start date for of the search.
/// </summary>
[DateTimeCompare("ToDate",
ValueComparison.IsLessThan, ErrorMessage = "From date must be earlier than end date.")]
public DateTime? FromDate { get; set; }
/// <summary>
/// Gets or sets the end date for the search.
/// </summary>
[DateTimeCompare("FromDate",
ValueComparison.IsGreaterThan, ErrorMessage = "To date must be later than from date.")]
public DateTime? ToDate { get; set; }
/// <summary>
/// Gets or set the page index.
/// </summary>
[Required]
[Range(0, int.MaxValue)]
public int? PageIndex { get; set; }
/// <summary>
/// Gets or sets the maximum record count per page.
/// </summary>
[Required]
[Range(1, short.MaxValue)]
public int? RecordsPerPage { get; set; }
/// <summary>
/// Gets or sets the activity log groups.
/// </summary>
public string Groups { get; set; }
}
это работает, если «YourProperty» является прямым параметром моего api, но в моем случае параметр ActivityLogFilterOptions является входным параметром, и одно из свойств ActivityLogFilterOptions является необязательным. – JerryGoyal
Вы можете увидеть опциональность свойств модели, нажав «Модель», а не «Примерное значение» в столбце «Тип данных» раздела «Параметры». – strickt01
эй, что сработало! так глупо от меня. – JerryGoyal