Ich kann weder das JavaScriptSerializer
Objekt noch den System.Web.Script.Serialization
Namespace in Visual Studio 2010 finden. Ich muss etwas für JSON serialisieren. Was soll ich verwenden?
Und ja, ich habe die System.Web.Extensions
(in System.Web.Extensions.dll) bereits in das Projekt aufgenommen. Welches ist, warum ich schockiert bin?
- Ich weiß,
System.Web.Extensions
wurde in 3.5 als veraltet markiert
c#
visual-studio
jsonserializer
Gefangener NULL
quelle
quelle
Antworten:
Überprüfen Sie, ob Sie die .net 4-Version von aufgenommen haben
System.Web.Extensions
- es gibt auch eine 3.5-Version, aber ich glaube nicht, dass eine funktioniert.Diese Schritte funktionieren für mich:
System.Web.Extensions
(4.0) hinzu.JavaScriptSerializer
jetzt Zugriff auf in Program.cs :-)quelle
References
undAdd Reference
dann aufAssemblies->Framework
AuswählenSystem.Web.Extensions
.quelle
Aus dem ersten Suchergebnis bei Google:
http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx
Fügen Sie also
System.Web.Extensions.dll
als Referenz hinzu.quelle
Ich verwende Visual Studio 2015 und bin schließlich auf diesen Beitrag gestoßen.
Ja, um zu verwenden
Sie müssen mit der rechten Maustaste auf Referenzen klicken und unter Baugruppen -> Framework auswählen
Fügen Sie dann Ihre Referenz hinzu
quelle
So erhalten Sie JavaScriptSerializer in Ihrer Anwendung verfügbar, zielgerichtet
.NET 4.0
(vollständig)Dies sollte es Ihnen ermöglichen, ein neues
JavaScriptSerializer
Objekt zu erstellen !quelle
befindet sich in Assembly: System.Web.Extensions (System.Web.Extensions.dll)
quelle
Zielen Sie auf das .NET 4-Framework oder das .NET 4-Clientprofil ab?
Wenn Sie auf Letzteres abzielen, werden Sie diese Klasse nicht finden. Möglicherweise fehlt Ihnen auch ein Verweis auf eine Erweiterungs-DLL.
quelle
Für diejenigen, die den obigen Antworten zu folgen scheinen, aber dennoch das Problem haben (siehe z. B. den ersten Kommentar zur Frage des Posters):
Sie arbeiten wahrscheinlich mit vielen Projekten an einer Lösung. Das Projekt, in dem Sie anscheinend arbeiten, verweist auf andere Projekte, aber Sie ändern tatsächlich eine Datei aus einem der anderen Projekte. Zum Beispiel:
System.Web.Extensions
Wenn sich die zu ändernde Datei
System.Web.Script.Serialization
jedoch in Projekt B befindet, müssen Sie auchSystem.Web.Extension
in Projekt B einen Verweis hinzufügen .quelle
Haben Sie einen Verweis auf aufgenommen
System.Web.Extensions
? Wenn Sie auf Ihren ersten Link klicken, wird angezeigt, in welcher Baugruppe er sich befindet.quelle
Sie müssen den Verweis auf das Projekt hinzufügen.
In Baugruppen gibt es eine System.Web.Extensions. Fügen Sie diese hinzu.
Sobald dies erledigt ist, setzen Sie:
Das hat bei mir funktioniert.
quelle
Damit Sie wissen, verwende ich Visual Studio 2013 und hatte das gleiche Problem, bis ich die Projekteigenschaften verwendet habe, um zu 3.5 Framework und zurück zu 4.5 zu wechseln. Aus irgendeinem Grund wurde die DLL ordnungsgemäß registriert und ich konnte die System.Web.Extensions verwenden .
quelle
Sie können eine andere Option verwenden, nämlich Newtonsoft.Json. Sie können sie über NuGet Package Manager installieren.
Tools >> Nuget Package Manager >> Package Manager-Konsole durch Ausgabe eines Befehls
Install-Package Newtonsoft.Json
oder
Verwenden Sie die grafische Benutzeroberfläche unter Extras >> Nuget Package Manager >> Verwalten von NuGet-Paketen für die Lösung ...
quelle