json.net Dual -veSencialization Problem
Ao usar o objeto de serialização json.net, um problema estranho pode ser encontrado: o objeto é uma serialização dupla. Isso fará com que os dados JSON sejam envolvidos em citações duplas na resposta, e as citações incorporadas também são justas.
causa raiz
A causa raiz é o método de serialização. Se você usar jsonConvert.SerializeObject (Instância)
se você usar jsonConvert.Serialilililililialieoboct (Instância). Isso ocorre porque você o serializa primeiro em uma string e, em seguida, o controlador da API se irá a serializar ainda mais ao JavaScript String Word.
solução
Para resolver esse problema, você só precisa retornar diretamente ao objeto:
public ienumerable
Método de substituição
public IEnumerable GetFoobars()
{
var foobars = ...;
return foobars;
}
httpconfiguration : config.formatters.jsonformatter.sersettings.converters.add config.formatters.jsonformatter.serializersettings.converters.add (new barconverter ());
outras dicas
verifique se o conversor personalizado está implementado corretamente.
config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(new FooConverter());
config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(new BarConverter());
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3