Não consigo encontrar o JavaScriptSerializer
objeto nem o System.Web.Script.Serialization
espaço para nome no Visual Studio 2010. Preciso serializar algo em JSON, o que devo usar?
E sim, eu já incluí o System.Web.Extensions
(no System.Web.Extensions.dll) dentro do projeto. É por isso que estou chocado?
- Eu sei que
System.Web.Extensions
foi marcado como obsoleto em 3.5
c#
visual-studio
jsonserializer
Prisioneiro ZERO
fonte
fonte
Respostas:
Verifique se você incluiu a versão .net 4 do
System.Web.Extensions
- há uma versão 3.5 também, mas acho que não funciona.Essas etapas funcionam para mim:
System.Web.Extensions
(4.0)JavaScriptSerializer
no Program.cs agora :-)fonte
References
e faça eAdd Reference
, em seguida,Assemblies->Framework
selecioneSystem.Web.Extensions
.fonte
Desde o primeiro resultado da pesquisa no google:
http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx
Então, inclua
System.Web.Extensions.dll
como referência.fonte
Estou usando o Visual Studio 2015 e finalmente encontrei esta postagem.
Sim para usar
Você deve clicar com o botão direito do mouse em referências e, em Assemblies -> Framework, escolha
Em seguida, adicione sua referência
fonte
Veja como disponibilizar o JavaScriptSerializer no seu aplicativo, segmentando
.NET 4.0
(completo)Isso deve permitir que você crie um novo
JavaScriptSerializer
objeto!fonte
está na montagem: System.Web.Extensions (System.Web.Extensions.dll)
fonte
Você está direcionando a estrutura .NET 4 ou o .NET 4 Client Profile?
Se você estiver segmentando o último, não encontrará essa classe. Você também pode estar perdendo uma referência, provavelmente uma DLL de extensões.
fonte
Para aqueles que parecem estar seguindo as respostas acima, mas ainda têm o problema (por exemplo, veja o primeiro comentário sobre a pergunta do pôster):
Você provavelmente está trabalhando em uma solução com muitos projetos. O projeto que você parece estar trabalhando em referência a outros projetos, mas na verdade você está modificando um arquivo de um dos outros projetos. Por exemplo:
System.Web.Extensions
Mas se o arquivo que você está modificando para usar
System.Web.Script.Serialization
estiver no projeto B, será necessário adicionar uma referência aoSystem.Web.Extension
projeto B também.fonte
Você incluiu uma referência a
System.Web.Extensions
? Se você clicar no seu primeiro link, ele diz em qual montagem está.fonte
Você precisa adicionar a referência ao projeto.
Em Assemblies, há um System.Web.Extensions Adicione isso.
Feito isso, coloque:
Isso funcionou para mim.
fonte
Só para você saber, estou usando o Visual Studio 2013 e tive o mesmo problema até usar as propriedades do projeto para alternar para a estrutura 3.5 e voltar para a 4.5. Por algum motivo, isso registrou o .dll corretamente e eu poderia usar o System.Web.Extensions .
fonte
Você pode usar outra opção, que é o Newtonsoft.Json, pode instalá-lo no NuGet Package Manager.
Ferramentas >> Nuget Package Manager >> Console do Gerenciador de Pacotes emitindo comando
Install-Package Newtonsoft.Json
ou
usando a GUI em Ferramentas >> Nuget Package Manager >> Gerenciar pacotes NuGet para solução ...
fonte