問題タブ [object-graph]

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

.net - .NET でオブジェクト グラフを視覚化するためのライブラリ

.NET で任意のオブジェクト グラフを再帰的に視覚化できるライブラリを知っている、または推奨できる人はいますか?

オブジェクト グラフの書式設定された表現を (コンソールに) 出力できるようにする必要があります。たとえば、次のような単純なオブジェクト グラフがあるとします。

次のような出力を生成するのは簡単です。

もちろん、Reflection を使用してそのようなライブラリを自分で作成することもできますが、そのようなものが既に存在する場合は、車輪の再発明に時間を浪費するのではなく、それを使用することをお勧めします。

コーディングのデモを行い、構築されたオブジェクト グラフがどのように見えるかを視聴者に簡単に示すために必要です。

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

.net - 文字列ではなく、オブジェクト グラフ出力を使用する .Net テンプレート エンジン

オブジェクト グラフの作成に使用されるテンプレート エンジンがあるかどうかを知りたいですか? HTML やその他の文字列結果のコンテンツを作成する方法はたくさんあります。しかし、オブジェクトを吐き出すテンプレート エンジンが必要です。いわばプリプロセッサ。

特定のページ ウィジェットをレンダリングするために使用される、ある種の事前定義されたオブジェクト グラフを必要とするアプリケーションがあります。たとえば、ページにツールバーがありますが、すべてのページに異なるツールバーがあります。とても似ているかもしれません。ただし、たとえば、[追加] ボタンは、一方のページと他方のページでは異なる URL を指します。

オブジェクト グラフの例 (一部):

この静的定義 (動的リソースと動的 URL ヘルパー呼び出しを含む) は、非常に長く複雑になる可能性があります。Word に似たリボンのようなツールバーを考えてみてください。非常に複雑で長い。

これらのオブジェクト生成テンプレートをデータベースに保存し、各ページが独自のページを読み取ることができるようにしたいと考えています。次に、テンプレート エンジンがそれを生成し、特定のリソース タイプ + キーを使用してローカライズされたデータを挿入します。同じことがアクションにも当てはまります。 ' URL...

オブジェクトの逆シリアル化 (XML または JSON) でも同様のことが行われます。ただし、組み込みの (逆) シリアル化テクノロジは、変数の置換やリソース リンクなどをサポートしていません。最善の方法は、リソース リンクとラムダ式をサポートすることです。

要約すると、必要なものを提供する.netオブジェクトグラフテンプレートエンジン/プリプロセッサはありますか?

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

ruby-on-rails - Rails 3:JSON文字列の一部に表示されるエスケープ文字(\)

私のjson要素の一部がバックスラッシュ()でエスケープされているのに、他の要素はエスケープされていない理由を誰かが知って\いますか?

理想的には、それらのどれも逃げたくない...

as_jsonこれは、2つのモデルでオーバーライドすることによって生成されました。人has_manyDogs。

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

wcf - DTO オブジェクトの不完全なオブジェクト グラフの文書化

現在のアーキテクチャは、DB から DTO オブジェクトを設定して返す WCF サービスに基づいています。

一部のメソッドは完全なオブジェクト グラフを返しますが、一部のメソッドは部分的なグラフのみを返します。完全に移入された場合、一部のオブジェクト グラフは非常に大きくなります。そのため、すべてのケースに対応できるわけではありません。

多くのDTOオブジェクトのプロパティのうち、どのプロパティが入力され、どのプロパティが入力されていないかを文書化する方法は? これは .NET ショップであり、XML コメントは、常に入力されるとは限らないプロパティを文書化するのに十分な柔軟性を提供しません。他の人はこの課題にどのように取り組んでいますか?

例: クライアントにとって、Invoice オブジェクトは、すべてのプロパティが入力されているかどうかに関係なく同じです。

提案されている 1 つのアイデアは、入力されたプロパティのみを使用してオブジェクトの XSD スキーマを生成することです。技術的には正しいですが、これは「良い/使える」ドキュメントのようには見えません。

編集:UMLの方が読みやすいため、XSDよりも優れた代替手段である可能性があることがわかりました。XML -> XSD -> UML (または別の作図パラダイム) に簡単に移行する方法はありますか?

0 投票する
3 に答える
2506 参照

.net - .NET Binary 他のオブジェクトへの参照を含むオブジェクトをシリアル化します。. . 何が起こるのですか?

他のオブジェクト (インスタンス B と C など) を参照するオブジェクト インスタンス A があり、A をファイルにバイナリ シリアル化するとどうなりますか? A、B、C を含むシリアル化されたデータはありますか?

正確にはどのように機能しますか?データを逆シリアル化すると何が得られますか? A、B、C??

(内部の仕組みの説明も自由に含めてください)。

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

java - JPA Criteria APIを使用してオブジェクトグラフをナビゲートする方法は?

次のクラスグラフがあるとします。

次に、JPA Criteria APIを使用して、特定の番地に一致するすべての家をクエリします。私はこれをやろうとしましたが、うまくいきませんでした。

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

objective-c - iOS の Core Data Alternatives

Core Data を使用していくつかの iOS アプリケーションを開発してきましたが、これは優れたフレームワークでした。ただし、複数のプラットフォーム間で多かれ少なかれオブジェクトを分散 (同期) しているという問題に遭遇しました。Web/データベース サーバー バックエンドとモバイル デバイス。

今までは問題にならなかったのですが、Core Data で使用されるデータ モデルの静的な性質に少し行き詰まりました。基本的に要求されているのは、サーバー上でフォームを作成し、デバイスに伝達できる動的フォーム システムです。次のようなセット数のテーブルでこれを実行する手法を認識しています。

  • フォーム テーブル
  • フィールド テーブル
  • フォーム テーブルのインスタンス
  • インスタンス値テーブル

すべてをリンクするだけです。しかし、私が疑問に思っているのは、より動的なオブジェクト グラフを可能にするコア データ (SQLite データベースと直接対話する上記の何か) に代わるシステムがあるかどうかです。実行時にスキーマを変更するためのオプションがあれば、標準の ORM でさえ良いでしょう。このルートをたどりたい主な理由は、(ローカルデバイスまたはサーバー上で) インスタンス値テーブルがエントリで爆発したくないという意味でのパフォーマンスのためです。

私の他のオプションは、iOS デバイスに静的スキーマ (オブジェクト グラフ) を配置し、サーバー側に変換レイヤーを配置して、正しいオブジェクトを取得し、プロパティを設定して正しいテーブルに保存することです。次に、デバイスが同期されると、逆のことが行われ、インスタンスに分割されます。これにより、サーバーのインスタンス値テーブルが肥大化するのを防ぐことができますが、デバイスでは依然として問題になる可能性があります。

任意の提案をいただければ幸いです。

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

c# - FluentNhibernate、部分オブジェクト グラフを取得

そのため、リポジトリを呼び出して、FluentNHibernate を使用して、複雑なオブジェクト グラフのルート オブジェクトを取得します。しかし、一部のサブレベル オブジェクトでは、すべての要素を取得するのではなく、日付パラメーターが特定の条件に一致する要素のみを取得したいと考えています。以下のコードでは、下位レベルの Order オブジェクトをこのように OrderTime フィールドでフィルタリングします。

つまり、すべてのユーザーを含むすべてのユーザーグループを取得したいのですが、各ユーザーの注文オブジェクトには、特定の日付または日付範囲からの注文のみが含まれます。

では、このオブジェクト グラフを取得するためのオプションは何ですか? 遅延読み込みはしたくありません。変更されることのないいくつかの異なる取得条件を指定したいだけです。したがって、最後に提案されているように、それらはリポジトリの個別の機能になる可能性があります。しかし、これらのメソッドをコーディングするにはどうすればよいでしょうか。これらの条件を指定するにはどうすればよいでしょうか。

オブジェクト:

リポジトリ:

可能性のある新しいリポジトリ メソッド: ?

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

data-structures - 2 つの階層の一方向同期

2 つの階層構造を同期させるアルゴリズムを書きたいと思っています。これらの構造は、オブジェクト グラフ、リレーショナル データベース テーブルに格納されたデータなどである可能性があります (同等のキーを持っている限り、2 つの異なる構造であっても)。同期は一方向になります。つまり、1 つの構造がプロトタイプになり、もう 1 つの構造が一致するように変更されます。

関数があるとしましょうsync。以下を受け入れる必要があります。

  1. objA- プロトタイプ
  2. objB-- 変更するオブジェクト
  3. keyA-- 鍵生成関数objA
  4. keyB-- 鍵生成関数objB
  5. addB-- を作成する関数objB( new の ID を返すobjB)
  6. setB-- 更新する関数objB
  7. remB-- を削除する関数objB
  8. parB-- の親の ID -- これはコンテキストのために にobjB渡されますaddB

だから私たちはこれを持っています:

今、ここで私は困っています。'a'bは階層的であるため、関数は と のどのプロパティをトラバースする必要があるかを知る必要があります'a('bキーを比較して、これまでに一致し、さらにトラバースする必要があると判断したら)。これらの「子」プロパティについては、sync に渡されるすべての同じ引数が必要ですが、それぞれの型が必要です。

これは、データ構造の問題であることが明らかになったときです。syncルート オブジェクトを渡してグラフを下方向にトラバースできるように、この情報を連鎖させるにはどうすればよいでしょうか。私の最初の考えは、すべての引数をクラスに組み込むことでした。このクラスには、子プロパティ (ResizeArray同じ型の) があります。しかし、さまざまなタイプのさまざまなプロパティがあるため、ウィンドウからタイプをスローして、タイプ引数のほとんどまたはすべてを作成する以外に、それを機能させる方法を見つけることができませんでしたobj

だからここに私の質問があります:

  1. これを行うための確立された方法はすでにありますか(何も見つけることができませんでした)
  2. これを機能させるために必要なデータをカプセル化するには、どのデータ構造を使用すればよいでしょうか?

丁寧に説明するよう心がけておりますが、ご不明な点がございましたらお気軽にお尋ねください。

0 投票する
3 に答える
2085 参照

javascript - javascriptでフラットオブジェクト配列からオブジェクトグラフを構築する

私は次のようなオブジェクトを持つオブジェクトのJavaScript配列を持っています:

itemId
name
parentItemId <== 親のないトップ レベルのアイテムは null 値を持つ

親項目に子の配列が含まれ、該当する場合はそれらの子に子の配列があるグラフを作成したいと考えています。

これについての良い方法は何ですか?