С# WebAPI несколько ResponseType -s на страницах справки

Рассмотрим следующий пример:

[ActionName("SomeTestAction")]
[ResponseType(typeof(SomeObject))]

public IHttpActionResult SomeTestAction(string id)
{

  SomeObject o = SomeMethod(id);

  if (o == null)
  {
      var message = string.Format("Nothing found for id = {0}", id);
      HttpError err = new HttpError(message);
      return Content(HttpStatusCode.NotFound, err);
  }
  else
  {
      return Content(HttpStatusCode.OK, o);
  }

}

Этот метод может иметь два разных ResponseType -s, основанных, например, на результатах запроса к базе данных. Есть ли способ указать это поведение на страницах справки WebAPI, чтобы пользователь знал, как выглядит ответ об ошибке?


person astralmaster    schedule 14.07.2017    source источник


Ответы (1)


Как указано здесь и исходя из моего опыта, я не думаю это возможно, потому что сгенерированные документы являются статическими.

Вы должны выбрать, хотите ли вы вернуть анонимный объект (несколько типов, разрешенных во время выполнения) или явно указать тип возвращаемого значения и отдать предпочтение деталям документации.

person Nandolcs    schedule 21.06.2018