Mix10のプレゼンテーション中に、プレゼンター(Charlie Kindel)は、WP7用のSilverlightベースのアプリを作成すると、Silverlight4.0の一部が混在したSilverlight3.0のすべてを入手できると述べました。
では、なぜSystem.Jsonが欠落しているのですか?これはSilverlight3.0に含まれており、Silverlight4.0に含まれています。
Mix10のプレゼンテーション中に、プレゼンター(Charlie Kindel)は、WP7用のSilverlightベースのアプリを作成すると、Silverlight4.0の一部が混在したSilverlight3.0のすべてを入手できると述べました。
では、なぜSystem.Jsonが欠落しているのですか?これはSilverlight3.0に含まれており、Silverlight4.0に含まれています。
への参照とへの参照を追加するとSystem.ServiceModel.Web
、機能System.Runtime.Serialization
するはずです。 名前空間System.ServiceModel.Web
に追加.JSON
されているように見えます。Serialization
DataContractJsonSerializerを使用することもできます。これは、MIXRCツールhttp://msdn.microsoft.com/en-us/library/system.runtime.serialization.json.datacontractjsonserializer.aspxに確実に存在します。
JSONはSystem.Runtime.Serialization.Json名前空間のWindowsPhone7でサポートされているようです。この質問は1か月前のものですが、これが役立つことを願っています。ロンドンのTechDaysからの情報(Twitter経由)は個人的にはありませんでした。
ここで引用した名前空間とクラスが正しくなかったので、正しい名前空間とクラスを次に示します。
System.Servicemodel.Webとクラスは、WindowsPhone7でのJSONシリアル化と逆シリアル化のためのDataContractJsonSerializerです-ここにコメントを投稿した後に修正した不正確な応答について申し訳ありません。
DataContractJsonSerializerはSilverlightで使用できますが、Windows Phone7CTPでは使用できないようです。後で表示されるかもしれませんが、現在は表示されません。(コードで使用してみましたが、System.Runtime.Serializationアセンブリにはこのクラスが含まれていません。公式ドキュメントには、JSONシリアル化はSilverlightにはあるが、Windows Phone 7にはないことが記載されています。)
ただし、JSON.NETライブラリを取得して、そこからWP7ライブラリプロジェクトを作成することはできました。これにより、正常に使用している電話のJSONインフラストラクチャが得られました。
Windows Phone 7プロジェクトでは、James Newton-KingsJSON.NetLibraryを使用しています。コードをダウンロードして、Newtonsoft.Json.Silverlightへの参照を追加するだけです。チャームのように機能します。
JSON名前空間がそこにない理由はわかりませんが、JSONをサポートするWindowsPhone7用のODataクライアントライブラリを使用できる可能性があります。
理由もわかりませんが、このリンクには名前空間がサポートされていないと書かれています
Silverlight forWindowsPhoneでサポートされている機能を参照してください。