Remoção do k__BackingField em C # (vista via Swashbuckle / Swagger)
Estou usando o Swashbuckle 5 no meu projeto de webapi do ASP.NET com todas as configurações padrão. Serializa a saída do meu método para mostrar o esquema da resposta. Estou recebendo documentação parecida com esta:
Response Class (Status 200)
Model Model Schema
[
{
"<Key>k__BackingField": "string",
"<Value>k__BackingField": "string",
"<Id>k__BackingField": 0
}
]
Isso é gerado seguindo o código C #
/// <summary>
/// Fetches all system configuration items
/// </summary>
/// <returns>List of <see cref="SystemConfigurationDto" /> items</returns>
public IList<SystemConfigurationDto> GetAllSystemConfigurationItems()
{
var result = CommandProcessor.ProcessCommand(new SystemConfigurationQueryCommand()) as SystemConfigurationQueryCommandResponse;
return result.Results.ToList();
}
result.Results é basicamente uma lista padrão de objetos, cada um contendo esses campos de chave / valor / id. Eu li aquihttps://conficient.wordpress.com/2014/05/22/getting-rid-of-k__backingfield-in-serialization/ esse atributo [serializable] pode afetar isso, mas não estou disposto a me livrar desse atributo, se possível. Existe alguma receita para ajustar esse artefato de serialização?