2012-07-02 15 views
6

Używam ten kawałek kodu:JSON .NET Windows Mobile Błąd podczas szeregowania

string serialized = JsonConvert.SerializeObject(somethingToSend); 

I to zgłasza to wyjątek:

MissingMethodException: Could not load type 'System.Runtime.Serialization.StreamingContext' from assembly 'mscorlib, Version=3.5.0.0, Culture=neutral, PublicKeyToken=969DB8053D3322AC'.

Oto moja konfiguracja:

  • Visual Studio 2008 (ze wszystkimi najnowszymi dodatkami Service Pack itp.)
  • Projekcja inteligentnego urządzenia t kierowania Windows Mobile 6 .NET 3.5
  • Json DotNet wersję 4.5 Release 7 (odniesienie DLL z folderu WindowsPhone w zip)

Odpowiedź na to pytanie "Is there a library to read JSON in C# on Windows Mobile?" sugeruje, że powinno działać.

Używam go w debug z rzeczywistym urządzeniu dołączonym (więc nie ma emulatora) gdzie mam zainstalowanego wcześniej plik CAB stąd bez błędu:

C:\Program Files (x86)\Microsoft.NET\SDK\CompactFramework\v3.5\WindowsCE\NETCFv35.wce.armv4.cab

Aplikacja działa poprawnie dopóki nie kliknij przycisk, który działa powyżej linii, więc czy ktoś wie, co mi brakuje?

Ten wątek "Json.Compact.dll for Windows CE 5.0?" sugeruje, że potrzebowałbym zainstalowanego zestawu Windows SDK, który mam. Biorąc pod uwagę, że działa na samym urządzeniu, to chyba nie będzie to poprawka.

Inną propozycją jest zbudowanie ze źródła, ale jak autor pytania Nie mogę załadować pliku projektu do VS 2008, aby to zrobić. Mógłbym stworzyć nowy projekt i dołączyć pliki źródłowe i spróbować je skompilować, ale zanim to zrobię, pomyślałem, że zapytam, czy warto, czy też brakuje czegoś innego w instalacji na urządzeniu? A może powinienem używać alternatywnej wersji?

Odpowiedz

9

Więc potrzebowałem RTFM! Plik readme mówi:

Microsoft stopped support for the Compact Framework in Visual Studio 2010. For a Compact Framework 3.5 build download Json.NET 3.5.

Więc złapałem najnowszej wersji 3.5, która jest: Json.NET 3.5 Release 8, zaktualizowane moje odniesienie do punktu do zespołu Newtonsoft.Json.Compact.dll, prowadził ją i to działało dobrze.

+0

Dodatkowo wydaje się, że 3.5.8 znalezione na codeplex na http://json.codeplex.com/releases/view/50552 to nie to samo, co 3.5.8, znalezione na nuget na https://www.nuget.org /packages/Newtonsoft.Json/3.5.8 – DaveWilliamson

+0

Witam, Skąd mogę pobrać Json dla Compact Framework 3.5 – Velkumar

+0

Link jest uszkodzony. – Tuco

Powiązane problemy