問題タブ [json.net]
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.
json - JSONを単純な辞書に逆シリアル化するにはどうすればよいですかASP.NETで?
POST 経由で ASP.NET に送り返される JSON の単純なキー/値リストがあります。例:
厳密に型指定された .NET オブジェクトに逆シリアル化しようとはしていません
プレーンな古いDictionary(Of String, String)、または同等の (ハッシュ テーブル、Dictionary(Of String, Object)、古い学校の StringDictionary が必要なだけです。文字列の 2 次元配列が適しています。
ASP.NET 3.5 で使用できるものはすべて使用できますが、一般的な Json.NET (クライアントへのシリアル化に既に使用しています) も使用できます。
どうやら、これらの JSON ライブラリのどちらにも、すぐに使用できるこの額を叩くような明らかな機能はありません。強力なコントラクトによるリフレクション ベースのデシリアライゼーションに完全に焦点を当てています。
何か案は?
制限:
- 独自の JSON パーサーを実装したくない
- ASP.NET 4.0 はまだ使用できません
- JSON 用の古い非推奨の ASP.NET クラスには近づかない方がよい
c# - C# で JSON を解析する
Google AJAX Search API から JSON データを解析しようとしています。この URLがあり、結果が表示されるように分割したいと思います。私は現在このコードを書いていますが、単純化された JSON 文字列を使用した例はたくさんありますが、次に何をすべきかについてかなり迷っています。
一般的に C# と .NET は初めてなので、ASP.NET ページの本物のテキスト出力を得るのに苦労したので、JSON.NET を試してみることを勧められました。Google AJAX Search API から JSON を取得して画面に出力するコードを単純に記述するだけの正しい方向に誰かが私を向けることができますか?
編集:すべて修正済み!すべての結果は正常に機能しています。ありがとうございます。
現在、コードは完全にコンパイルおよび実行されますが、結果は返されません。誰かが必要なものを返すのを手伝ってくれませんか?結果を画面に印刷する準備ができていますか?
編集:
Json.NET は、上記の例と同じ JSON とクラスを使用して動作します。
リンク: Json.NET を使用した JSON のシリアライズとデシリアライズ
関連している
c# - DataContractJsonSerializer を使用した変数型 JSON 配列のデシリアライズ
次の形式の JSON 文字列があります。
次のコード スニペットで C# .NET デシリアライザー DataContractJsonSerializer を使用して JSON をデシリアライズしようとしています。
JSON配列は変数型の配列であるため、オブジェクトXがどの型であるべきかわかりません
もし私の文字列が
私はこれを使うことができます:
それは私のために働くでしょう。変数型の JSON 配列を逆シリアル化する方法があるかどうか疑問に思っていましたか?
c# - JSON.NET を使用してカスタム GeoJson シリアライザーを作成する方法に関する提案はありますか?
Json.NET (シリアル化用) とGeoAPI.NET (ジオメトリ定義用 )を使用してオブジェクトをGeoJSONにシリアル化する C# ライブラリを作成しようとしています。
シリアライゼーションの実装について 2 つの異なるアプローチを考えましたが、どちらが最適なアプローチであるかはわかりません。彼らです:
アプローチ 1 - カスタム属性
最初のアプローチでは、シリアライゼーションを変更するために任意のクラスに適用できるいくつかのカスタム属性を作成します。たとえば、クラスは次のように装飾できます。
オブジェクトのシリアル化は、次のように簡単になります。
このアプローチの利点は、必要なプロパティ ( Geometry など) があると仮定して、任意のビジネス オブジェクトを GeoJSON オブジェクトに変換できることです。欠点は、シリアル化をサポートするために多数のカスタム属性を作成する必要があることです。さらに、これはビジネス オブジェクトを「混乱させる」という影響があります。
最後に、このアプローチが JSON.NET でも可能かどうかはまだ判断していませんが、可能になるようです。
アプローチ 2 - カスタム JsonConverter
2 番目のアプローチでは、さまざまな型のカスタム コンバーターを作成します。たとえば、Feature などの特定のタイプのオブジェクトを渡すと、GeoJSON オブジェクトが作成される GeoJsonConverter があるとします。これは次のようになります。
次に、次のように GeoJson にシリアル化できます。
ここでの利点は、作成が簡単に見えることです。私は、このアプローチが非常に単純なプロトタイプによって可能であることを証明しました。さらに、NetTopologySuiteFeature
にリンクすると、クラスは既に定義されています。
Feature
欠点は、シリアル化する前に、ビジネス オブジェクトを にマップする必要があることです。ただし、これはレイヤー間の自然な分離を提供する可能性があるため、利点と見なされる場合があります。どちらの場合も GeoAPI と密結合し、後者の場合は NetTopologySuite と密結合することは間違いありません。私はそれで大丈夫だと思います。
GeoJson.NETなど、他のいくつかの GeoJson シリアライザーが利用可能であることは承知していますが、これが選択したシリアライザーであるため、Json.NET API と一貫性のあるアプローチが必要です。
あるアプローチが他のアプローチよりも好まれる明確な理由はありますか? おそらく、私が気付いていない別のアプローチがありますか?
参考までに、私は2番目のアプローチに傾いています。実装が簡単になり、全体的にきれいになるようです。また、ドメイン オブジェクトとそれによって作成される GeoJson オブジェクトとの間の自然な境界も気に入っています。
javascript - JSON.NETを使用してASP.NET MVC経由でJSON日付値を渡す方法は?
重複の可能性:
Microsoft JSON の日付をフォーマットしますか?
ASP.NET 関数Json()
は、日付を次のようにフォーマットして返します。
これは問題のあるクライアント側で処理する必要があります。日付値をやり取りするためのアプローチについて、あなたの提案は何ですか?
asp.net - json配列を返すajaxリクエスト、IE6 / 7はそれをキャッシュしており、データは新鮮ではありません
何らかの理由で、IE6/7はjson結果セットを返すajax呼び出しをキャッシュしています。
私のページは呼び出しを行い、jsonの結果を返します。これをページに挿入します。
IE6 / 7にこの呼び出しを強制し、キャッシュされた戻り値を使用しないようにするにはどうすればよいですか?
.net - Asp.net MVC json または Json.net?
私は現在 asp.net mvc を使用していますが、組み込みの Json またはJson.Netを使用するより良い選択は何なのか疑問に思っています。どちらが有利かはわかりません。
また、Json.Net のルートをたどることを選択した場合、安定版またはベータ 4 を使用する必要がありますか? ベータ版がどれほど不安定かはわかりません。
c# - json.net c# で json をデシリアライズする
Jsonが初めてなので、少し緑色です。
JSON文字列を返すRestベースのサービスがあります。
私はJson.netで遊んでいて、文字列をオブジェクトなどに逆シリアル化しようとしています。私は助けるために拡張メソッドを書きました。
treeNode[] オブジェクトの配列を期待していました。しかし、別のオブジェクトの treeNode[] プロパティの場合にのみ正しく逆シリアル化できるようです。
逆シリアル化からストレート配列を取得する方法はありますか?
乾杯
c# - C# コードから Google AJAX Feed API の結果を読み取るには?
C# コンソール アプリケーションでGoolge AJAX Feed APIを使用してリターン フィードを C# コレクションとして保存し、.net アプリケーションでこの .net コレクションを使用できるようにしたいと考えています。
Google が Java アクセス コード スニペットを提供していることに気付きましたが、C# でコーディングする方法がわかりません。JSON 形式のデータの読み取りと書き込みに使用できる、非常に優れた .net オープンソース ライブラリJson.NETがあることは知っています。
C# とJson.NETを Google AJAX Feed API で使用する方法を教えてもらえますか?
最終的解決: