Изменение отображаемого имени в модели для отображения в ответе

#swagger #asp.net-core-webapi #asp.net-core-3.1 #webapi

Вопрос:

Я ищу способ изменить отображаемое имя свойства в модели, чтобы то же самое было отражено в теле ответа в swagger.

Я попытался использовать DisplayName атрибут для поля, но, похоже, это не работает.

 [DisplayName("Fucntion ID")]
public string FunctionId { get; set; }

[DisplayName("Function Description")]
public string FunctionDEscription { get; set; }
 

Изображение

Есть ли какой-либо другой способ достичь этого? Заранее спасибо.

Ответ №1:

Если вы используете asp.net ядро 3.x и asp.net 5,вы могли бы использовать [JsonPropertyName("Fucntion ID")] то, что находится внутри System.Text.Json .

Если вы используете asp.net ядро 2.x,вы могли бы использовать [JsonProperty("Fucntion ID")] то, что находится внутри Json.NET .

Ссылка:

https://docs.microsoft.com/en-us/dotnet/api/system.text.json.serialization.jsonpropertynameattribute?view=netcore-3.1

https://www.newtonsoft.com/json/help/html/JsonPropertyName.htm

Ответ №2:

Я получил ответ-

Используется [JsonPropertyName("Fucntion ID")] вместо [DisplayName("Fucntion ID")]