問題タブ [javascriptserializer]

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 投票する
7 に答える
60760 参照

c# - C#.NETのDataTableからJSONへ

私はC#と.NETでかなり新しいですが、ストアドプロシージャを呼び出すためにこのコードを作成しました。次に、返されたDataTableを取得してJSONに変換します。

私の質問は、それを行うための最良/最も簡単な方法は何ですか?私はまだこれに非常に慣れていないので、例は素晴らしいでしょう。

0 投票する
29 に答える
598201 参照

c# - JavaScriptSerializer - 列挙型の文字列としての JSON シリアル化

プロパティを含むクラスがあり、enumを使用してオブジェクトをシリアル化すると、json の結果には「名前」JavaScriptSerializerではなく列挙の整数値が含まれます。カスタムを作成せずに、json でstringenum を取得する方法はありますか? おそらく、定義またはオブジェクト プロパティを装飾できる属性があるでしょうか?stringJavaScriptConverterenum

例として:

望ましい JSON 結果:

理想的には、組み込みの .NET フレームワーク クラスを使用して回答を探します。可能でない場合は、代替手段 (Json.net など) を歓迎します。

0 投票する
17 に答える
304582 参照

c# - C# を使用して .NET でフォーマットされた JSON を取得するにはどうすればよいですか?

.NET JSON パーサーを使用しており、構成ファイルをシリアル化して読み取り可能にしたいと考えています。したがって、代わりに:

私は次のようなもっと良いものが欲しいです:

私のコードは次のようなものです:

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

jquery - eval 特殊文字を削除した後の「JavaScriptSerializer() を使用してシリアル化されたオブジェクト」

JavaScriptSerializer() オブジェクトを評価する必要があります。

上記の行は次のように出力します。

次のようなシリアル化されたコンテンツに eval を使用する場合:

エラーがスローされます:

プロパティ リストの後に } がありません

これは、eval 中のシリアル化されたオブジェクト (FooterNotes の " および開始引用符と終了引用符の間にあるその他の文字) の特殊文字が原因です。

評価前にシリアル化された特殊文字を削除するにはどうすればよいですか?

SalesTaxPercentageまたは、シリアル化されたオブジェクトから値を取得するにはどうすればよいですか?

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

javascript - JavaScriptSerializer は、オブジェクト「コレクション」をオブジェクトのプロパティとして逆シリアル化して失敗します

次のような構造の js オブジェクトがあります。

JSON.stringify(object) を使用して、これを ajax リクエストで渡します。JavaScriptSerializer.Deserialize を辞書として使用してこれを逆シリアル化しようとすると、次のエラーが発生します。

'System.String' の型に対して定義されたパラメーターなしのコンストラクターはありません。

これとまったく同じプロセスが、「コレクション」以外のプロパティを持つ通常のオブジェクトでも機能します。助けてくれてありがとう!

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

c# - JavaScriptSerializerによって生成されたオブジェクトから情報を抽出する方法

SqueezeboxServer(SBS)を制御できるC#でアプリケーションを開発しています。SBSとの通信は、JSONメッセージを介してhttp:// serverIP:9000 / jsonrpc.js に送信されるため、HTTPWepRequestを介してJSONメッセージを送信し、HTTPWebResponseを介して回答を取得します。

私が得た答えは、JSON表記の文字列です。そして、ここから問題が始まります...今のところ、JavaScriptSerializerを使用してJSONメッセージをオブジェクトに変換します。これは次のようになります。

このコードは、私が要求するデータを保持するオブジェクトを提供します。私が求めるデータは非常に異なる場合があります。答えが単一の答えである場合もあれば、複数の場合もあります。

私が含めた2つの画像を考えてみましょう:

最初のオブジェクトは、deSerializerによって返された後のオブジェクトを示しています。オブジェクトが4つのキーと値のペアを持つディクショナリであることがわかります。私が興味を持っているkvpは4番目です。重要な「結果」は、必要なデータを保持するものです。しかし、このキーには値として別のDictonaryがあります。そして、これは、アルバム名とそのIDである実際のデータが必要になるまで続きます。

代替テキスト

2番目の画像では、必要なデータは「_count」キーに属する値0です。ご覧のとおり、このオブジェクトはそれほど複雑ではありません。

代替テキスト

それで、私の質問の要点は、必要な情報を取得できるが、さまざまな種類のオブジェクト(さまざまな深さなど)で機能するソリューションをどのように作成するかです。

誰もが私を正しい方向に送ってくれることを願っています。

ありがとう!

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

c# - JavaScriptSerializer がコンバーターを無視するのはなぜですか?

.NET の DateTime 構造では直接解析できない形式の日付/時刻を含む JSON オブジェクトを読み込もうとしています。日付/時刻の構造体に「int」フィールドが含まれないようにするために、カスタム DateTimeConverter を作成しました。

しかし、JavaScriptSerializer で JSON 文字列を読み取る場合、カスタム コンバーターは使用されません。

コンバーター、DateTime 値を含む型を逆シリアル化するときではなく、DateTime 値を直接逆シリアル化するときに使用されます。

なんで?カスタムの DateTime 型を記述したり、int を使用したりせずに、これを回避する方法はありますか?

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

asp.net - JScript.NETから呼び出されたときにJavaScriptSerializerが間違った答えを返すのはなぜですか?

ASP.NET/C#の場合:

戻り値fruits=["apple","banana","crunchberries"]

ASP.NET/VB.NETの場合:

戻り値fruits=["apple","banana","crunchberries"]

しかし、ASP.NET / JScript.NETでは:

戻り値fruits=["0","1","2"]

これは完全に壊れているようです。これは、フルーツのデータ型を明示的に宣言することで修正できます。これにより、これが「ネイティブ配列」になります。

戻り値fruits=["apple","banana","crunchberries"]

正しいシリアル化を取得するためにタイプが必須である理由がわかりません。(var fruits = ["apple","banana","crunchberries",5]悪いコードかもしれませんが、JavascriptとJscriptの両方で合法です。)JScript配列はネイティブ配列よりも遅いと思われますが、それでも機能すると思われますよね?

0 投票する
4 に答える
46538 参照

c# - 無効な Json プリミティブ

この問題を解決するために私を助けてくれませんか。私は 1 つの asp.net アプリケーションを持っています。これでは、リストへの変換に続いてデータセットをシリアル化するために Javascript シリアライザーを使用しています。そのコードを以下に示します。

しかし、逆シリアル化の時点で、Json 値を持つ Invalid Json Primitives のような ArguementException を 1 つ受け取りました。私のjson値は

デシリアライズのコードは次のとおりです。

ここで、lstDoc は自分のクラスのタイプのリスト コレクションです

次のような例外が発生しました。

この問題を解決するために私を助けてください。前もって感謝します

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

serialization - JavaScriptSerializer と monodevelop

私はこの本を読んでいますが、私は System.Web.Script.Serialization 名前空間から JavaScriptSerializer を利用できないようです?