В настоящее время я создаю и конечную точку (назовем это myendpoint) и хотел бы иметь возможность манипулировать именами параметров в соответствии с требованиями. Допустим, у меня есть объект с именем myobject
, который содержит следующие свойства name
, address
, addressCity
и addressState
. Однако мне нужно, чтобы addressCity
и addressState
отображались в документации как address-city
и address-state
. Есть ли способ переопределить имена свойств внутри объекта для достижения этой цели?
public class myobject
{
public string name { get; set; }
public string address { get; set; }
[JsonProperty("address-city")]
public string addressCity { get; set; }
[JsonProperty("address-state")]
public string addressState { get; set; }
}
/// <summary>
/// Gets some information
/// </summary>
/// <param name="myobject"></param>
/// <returns></returns>
public IHttpActionResult GetInformation([FromURI] Object myobject)
{
// Code
}
Текущая документация на странице справки отображается как:
http://localhost:9999/api/myendpoint?name={name}&address={address}&addressCity={addressCity}&addressState={addressState}
Я бы хотел, чтобы это отображалось как:
http://localhost:9999/api/myendpoint?name={name}&address={address}&address-city={address-city}&address-state={address-state}
Я пытался использовать несколько атрибутов, таких как DisplayName
, JsonProperty
(в настоящее время это используется, но документация XML не распространяется на новое имя).
Редактировать: добавлена функция