問題タブ [datacontractjsonserializer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
9 に答える
132971 参照

c# - C# 匿名型を JSON 文字列にシリアル化するにはどうすればよいですか?

次のコードを使用して、匿名型を JSON にシリアル化しようとしています。

ただし、これを実行すると次の例外が発生します。

型 '<>f__AnonymousType1`3[System.Int32,System.Int32,System.Object[]]' をシリアル化できません。これを DataContractAttribute 属性でマークし、シリアル化するすべてのメンバーを DataMemberAttribute 属性でマークすることを検討してください。サポートされているその他の型については、Microsoft .NET Framework のドキュメントを参照してください。

属性を匿名型に適用することはできません (私の知る限り)。このシリアル化を行う別の方法はありますか、それとも何か不足していますか?

0 投票する
1 に答える
8153 参照

c# - DataContractJsonSerializerをjson配列として使用してオブジェクトをシリアル化します

アイテムのリストを含むクラスがあります。DataContractJsonSerializerをjson配列として使用して、このクラスのインスタンスをjsonにシリアル化したい。例えば。

jsonにシリアル化すると、次のようになります。

[{"Name":"one","Description":"desc1"},{"Name":"two","Description":"desc2"}]

0 投票する
1 に答える
492 参照

c# - DataContractJsonSerializerへのアクセス再因数分解されたforeachループを介したプロパティ

私は以下のコードを持っています。

この行string content = twitterMsg.text;は、twitterMsgに対して「未割り当てのローカル変数の使用」というエラーを作成しています。コレクション内の自分のTwitterSearchResponse.results.textフィールドにアクセスできないようです。DataContractJsonSerializer<TwitterMain>

TwitterSearchResponse.resultstextは、およびなどの名前が付けられたいくつかの文字列フィールドを持つ配列(オブジェクトプロパティのセット)user_infoです。

誰かがこれを手伝うことができますか?

以下のコードを更新しました。TwitterSearchResponse.results適切に反復して割り当てることができない理由について、私はまだ非常に混乱していますcontent = twitterMsg.text

価値のあるものとして、これが私のDataContractJsonSerializerメソッドです。

そして、これが問題が存在する元の投稿されたコードです。

0 投票する
1 に答える
5796 参照

c# - サードパーティのフレームワークを使用せずにHttpWebResponseからJSONを逆シリアル化する方法

HttpWebResponseからの着信JSONを解析するために、オープンソースやJson.NETなどのサードパーティライブラリに依存しないようにしています。なんで?実装を支援するためにオープンソースフレームワークに依存するほど、アプリはそれらの依存関係に依存する必要があります...可能であれば、多くの理由でアプリが多くのライブラリに依存することは好きではありません。MSでサポートされているため、Enterprise Libraryのようなものを使用しても問題ありませんが、より多くのオープンソースライブラリを使用しています。

とにかく、私は.NET3.5で着信JSONサーバー側を解析するための最良の方法を見つけようとしています。

これにより多くの応答が得られることはわかっており、.NET 3.5 JavaScriptSerializerを使用してデータをJSONにシリアル化したこともありますが、今度は、逆のことを行わずに、逆を行うための最良かつ最も簡単な方法を見つけようとしています。これを支援するためにサードパーティ/オープンソースフレームワークを使用する。

0 投票する
2 に答える
1087 参照

.net - .NET DataContractJsonSerializer で既にシリアル化されている文字列に JSON を追加します

DataContractJsonSerializer を使用してオブジェクトを json にシリアル化し、AJAX を使用してクライアントに返します。ここで、別のオブジェクトをシリアライズして、一緒に返す必要があります。問題は、JSON をラップする MS の "d" です。これにより、文字列を単純に連結して 1 つの JSON 文字列にすることができなくなります。

戻り値:

どんな提案でも大歓迎です。他のオブジェクトを取得するためにサーバーに別の呼び出しを行う必要はありません。

0 投票する
1 に答える
2691 参照

json - DataContractJsonSerializerの使用

json出力ストリームを提供することで着信要求に応答するWCFサービスをホストしようとしています。私は次のタイプを持っています

* .svc.csファイルで、次のことを行います

したがって、基本的にリストをJsonにシリアル化しようとしていますが、「WriteObject」の実行時に次のエラーが発生します。-

サーバーでリクエストの処理中にエラーが発生しました。例外メッセージは、データコントラクト名が「ArrayOfHubCommon:http」の「Type」System.Collections.Generic.List`1 [[HubContentCore.Domain.HubCommon、HubContentCore、Version = 1.0.0.0、Culture = neutral、PublicKeyToken=null]]」です。 ://schemas.datacontract.org/2004/07/HubContentCore.Domain'は予期されていません。静的に不明なタイプを既知のタイプのリストに追加します。たとえば、KnownTypeAttribute属性を使用するか、DataContractSerializerに渡される既知のタイプのリストにそれらを追加します。

ここで何が欠けていますか?

前もって感謝します。

0 投票する
2 に答える
7522 参照

c# - 型が混在する JSON 配列の逆シリアル化

DataContractJsonSerializer クラスを使用して混合型の JSON 配列を逆シリアル化する際に問題があります。無駄な解決策を探すのに多くの時間を費やしたので、先に進んでここで質問しようと思いました.

基本的に、以下のような JSON 文字列を取得しています。位置 0 に Int32 があり、位置 1 に文字列があり、位置 2 にカスタム クラスのインスタンスがあるリストに逆シリアル化する配列を取得したいと思います。

次のようにシリアライズを作成するだけの場合:

実際には、位置 0 で Int32 を取得し、位置 1 で String を取得します。ただし、位置 2 では null オブジェクトを取得するだけです。

私がやろうとしていることさえ可能かどうか誰にも分かりますか? 消費している JSON の構造を制御することはできません。可能であれば、サードパーティのアセンブリを使用せずにこれを実現したいと考えています。

0 投票する
2 に答える
2540 参照

json - 値の JSON 2 次元配列のデシリアライズ

JSON 形式の値の 2 次元配列を取得しました。

各ペアには、実際には無関係な測定値のペアが含まれており、1 分ごとに 1 つのペアがあります。したがって、最初の 1 分間では、読み値 1 は57であり、読み値 2 は2です。2 分目では、読み取り値は同じです。

ここで、これを .Net で使用できる形式に変換して、これらの各読み取り値をプロットしたいと考えています。これは、1 分ごとに 1 つの要素を持つ最初の値の読み取り用の 1 つと、2 番目の値のすべての読み取り用の 1 つの配列の 2 つの並列配列のいずれかです。または、これが簡単な場合は、2 次元配列にすることもできます。

DataContractJSONSerializer私は運なしで使ってみました:

whereSubmissionDataRowは各読み取り値のプロパティを持つ単なるクラスですが、デシリアライザーはどのプロパティにどの値を入れるかを知りません!

0 投票する
2 に答える
16297 参照

c# - System.Runtime.Serialization.Json.DataContractJsonSerializer.WriteObjectは、シリアル化中にNonSerialized属性を無視します

次のClassToSerializeクラスのオブジェクトをSystem.Runtime.Serialization.Json.DataContractJsonSerializerでシリアル化しようとすると

戻り文字列には、IsMfプロパティとその値が引き続き含まれています。NOnSerialized属性は無視されます。一部のプロパティをシリアル化しないように、DataContractJsonSerializerを使用するときに使用する属性を誰かが提案できますか?

0 投票する
1 に答える
1651 参照

asp.net - DataContractsはどのように機能しますか?-Jsonを逆シリアル化します

このSOの質問から例を取得し、jsonオブジェクトの逆シリアル化に使用する独自のカスタムGoogleマップオブジェクトを作成しました。

これでコードはチャンピオンのように機能しますが、なぜ/どのように機能するのかについての説明が必要です。シリアライザーは名前を一致させるために「試行」しますか、それとも何か他のことが起こっていますか。

これは正確に何をしているのですか?

これが動作するコードです。

そしてこれがGeolocationLatLonPocoです

私がコードを呼び出すとき、それは本当に非常に簡単です。
これはMVCコントローラーであり、私が何をしているのかを示す以外に、質問と「本当に」関係がないことに注意してください。

そして最終結果は

{"緯度": "50.124300"、 "経度":"-114.4979990"}