Pergunta

Agora estou usando o asp.net mvc e me perguntando qual é a melhor escolha usando o Json integrado ou JSON.Net Não tenho certeza se um tem vantagem sobre o outro.

Além disso, se eu decidir seguir o caminho do Json.Net, devo escolher a versão estável ou beta 4?Não tenho certeza de quão instáveis ​​os betas são.

Foi útil?

Solução

Você pode ter problemas serializando datas com o MVC JSON. Minha resposta a essa postagem é repetida abaixo.

Se você não estiver vinculado ao serializador MS JSON, poderá usar Json.NET.Ele vem com um IsoDateTimeConverter.Isso serializará as datas em um ISO 8601 sequência formatada.

Por exemplo, no nosso projeto serializar myObject é manipulado via o código a seguir.

JsonNetResult jsonNetResult = new JsonNetResult();
jsonNetResult.Formatting = Formatting.Indented;
jsonNetResult.SerializerSettings.Converters.Add(new IsoDateTimeConverter());
jsonNetResult.Data = myObject;

Se você decidir tomar o Json.NET mergulho que você também vai querer agarrar JsonNetResult à medida que retorna um ActionResult que pode ser usado em ASP.NET aplicação MVC.É bastante fácil de usar.

Para mais informações consulte: Bons (Data)Horários com Json.NET

No momento, estamos usando o Json.NET v3.5 Beta 4 e não encontramos problemas.No entanto, ainda não tributamos realmente o nosso sistema, pois ele ainda não entrou em produção.Sua milhagem pode variar dependendo de quanto da estrutura você está usando.

Espero que isto ajude.

Outras dicas

Meu pensamento é que não encontrei nenhum problema com o cozimento em Json.Eu sugeriria continuar com isso até encontrar algo que não funcione.Menos dependências simplificam a depuração.

No passado, trabalhei com uma biblioteca .NET JSON que utilizava um método de aceitação ou exclusão para indicar quais membros de uma classe são serializados.Ao revisar o aplicativo de amostra NerdDinner, vejo uma classe no SearchController chamada JsonDinner que se parece com uma classe Dinner normal, mas parece existir apenas para gerar corretamente alguns detalhes extras que poderiam ser argumentados como relacionados apenas à visualização e não verdadeiramente relacionados ao modelo características.Neste caso simples, um mecanismo de notação de atributos no modelo, identificando as peças a serem serializadas para JSON, resultaria em uma quantidade reduzida de código mantido manualmente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top