問題タブ [bag]
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.
nhibernate - Hibernate 子オブジェクトの更新
「カテゴリ」と呼ばれるオブジェクトがあり、テーブルは次のようになります。
挿入、更新、削除などの場合、すべてが正常に機能します...マッピングは問題ありません。
このテーブルのデータは、「ネストされた」HTML リストにレンダリングされます (したがって、自己参照)。これはすべて美しくレンダリングされます。
がPosition
更新されると (上に移動 || 下に移動)、更新されたリストに変更が反映され、問題のリスト項目がリスト内の位置を移動します。
問題は、ParentCatalogID が変更された場合です (左に移動 || 右に移動して上記のリスト エントリの子になります)。リスト レンダー メソッドに渡されたデータは、F5 キーを押して更新 (ページの再読み込み) をクリックしてページを更新するまで、変更を反映していません。
これにより、次の方法の基本的なアイデアが得られます。
これはすべてうまくいきます。foreach (nc_Category category in root.nc_Categorys)
問題は、>> 行root.nc_Categorys
(現在のオブジェクトの子) で、ページが更新されるまで行われた変更が反映されないことです。これはデバッグで確認できます。したがって、NHibernate は遅延読み込み時に更新を取得していません。
変更はコミットされ、フラッシュされ、データベースに表示されます。それらは Hibernate によって取得されません。
オブジェクトで Refresh() メソッドを試しましたが、うまくいきません。リフレッシュが必要なのはオブジェクトの子です。
セッションをクリアしようとしましたが、他の多くのことは役に立ちませんでした。これは、 を変更した場合にのみ発生しParentCategoryID
ます。が変更されると、Position
すぐに表示されます。
これは似ているようですが、よくわかりません: http://jira.nhibernate.org/browse/NH-1604
同じページ (yuk) に response.redirecting しています。正常に動作しますが、必要ないはずです。対応は大変有り難く存じます。
objective-c - ヒストグラムまたはバッグ データ構造の Objective-C 実装
私自身を実装する代わりに、私が使用できる Objective-C のヒストグラムまたはバッグ データ構造の実装を誰かが知っているかどうか疑問に思っていました。
基本的に、ヒストグラムはリストのハッシュマップであり、リストにはハッシュエントリに関連する値が含まれています。良い例は、乳製品、肉、缶詰商品の各グループをそれぞれのバッグに入れるスーパーマーケットの商品のヒストグラムです。その後、タイプに応じてアイテムの各グループに非常に簡単にアクセスできます。
java - 配列実装バッグで k 番目に大きい要素を見つける
s のコレクションがComparable
バッグに保持されており、k
th 番目に大きい要素を見つける必要があります。コレクションを a にコピーして重複を削除し、 を配列にHashSet
変換してソートし、その結果、 th 要素にアクセスしました。コードはコンパイルされますが、テストに失敗し、何が問題なのかわかりません。何か案は?HashSet
k
.net - .NET の ConcurrentBag のようなクラス実装されますか?
ConcurrentBag<T>
次の .NET 4.0 フレームワークに次のようなクラスが存在することに、私は非常に興味をそそられています。
バッグは、順序が重要でない場合にオブジェクトを格納するのに役立ちます。また、セットとは異なり、バッグは複製をサポートします。
私の質問は次のとおりです。このアイデアをどのように実装できますか? 私がよく知っているほとんどのコレクションは、本質的に (ボンネットの下で) 何らかの形式の配列に相当し、その順序は「重要」ではないかもしれませんが、順序があります (これが、その必要がないにもかかわらず、列挙が行われる理由です)。ほとんどの場合、変更されていないコレクション ( List
、Queue
、Stack
など) を同じ順序で処理します)。
Dictionary<T, LinkedList<T>>
推測する必要がある場合は、内部的には;になる可能性があることをお勧めします。しかし、キーとして任意のタイプを使用するのは意味がないことを考えると、それは実際にはかなり疑わしいようです。T
私が期待/期待しているのは、これが実際にはすでにどこかで「理解されている」確立されたオブジェクトタイプであり、この確立されたタイプを知っている誰かがそれについて教えてくれることです。これは私にとって非常に珍しいことです。実生活で理解するのは簡単ですが、開発者として使用可能なクラスに変換するのは難しい概念の 1 つです。そのため、可能性について興味があります。
編集:
Bag
一部の回答者は、aが内部的にハッシュテーブルの形式である可能性があることを示唆しています。これは私の最初の考えでもありましたが、この考えには 2 つの問題があることを予見しました。
- 問題のタイプに適したハッシュコード関数がない場合、ハッシュテーブルはそれほど役に立ちません。
- コレクション内のオブジェクトの「カウント」を単に追跡することは、オブジェクトを格納することと同じではありません。
Meta-Knight が示唆したように、おそらく例はこれをより明確にするでしょう:
c# - .Net 用のマルチセットの実装はありますか?
マルチセットの .Net 実装を探しています。誰かが良いものを推薦できますか?
(マルチセットまたはバッグは、重複する値を持つことができるセットであり、交差、差などのセット操作を実行できます。たとえば、ショッピング カートは、複数の値を使用できるため、マルチセットと考えることができます。同じ商品です。)
hibernate - コンポーネントの空のコレクションを休止状態にする
Hibernate を使用してマッピングされたコンポーネントがあります。データベース内のコンポーネントのすべてのフィールドが null の場合、コンポーネント自体は hibernate によって null に設定されます。これは予想される動作であり、必要なものでもあります。
私が抱えている問題は、そのコンポーネントにバッグを追加すると、バッグが空のリストに初期化されることです。これは、コンポーネントにnull以外の値があることを意味します...その結果、コンポーネントが作成されます。
これを修正する方法はありますか?
Restirctions.isNull("statistics") を使用した基準は、期待値を返します。
c# - コレクション用の Nhibernate カスタム ローダー
誰かがこれを手伝ってくれることを本当に望んでいます.1日半の間、さまざまな組み合わせを試してきました....
基本的に、単一のテーブルにいくつかの階層データが格納されています。通常のparentIDは行IDシナリオにマップされます。特定のアイテムの祖先のリストを返すドメイン オブジェクト内のプロパティをモデル化しました。ログを見ると、すべてが機能しているようです(つまり、正しい行を取得してハイドレートします:
ただし、コレクションに実際にデータが入力されることはなく、私のコードをステップ実行すると、Ilist には本来あるべきものが含まれていません - 単一のインスタンス (現在のレコードと同じ) しか含まれていません!?? 返された列をマップできないというエラーはログに記録されていませんが、正しく入力されていないように見えるだけですか? 明らかな何かが欠けていると確信しています-しかし、それを見ることはできません....
マッピングにこのようなコレクション宣言があります
...そして、指定されたキーワードのキーワード祖先のリストを返す、query という名前のカスタム ローダー:
私はすでにこれに長い間費やしてきたので、髪を引き裂くところにいるので、どんな助けも大歓迎です!!
c# - NHibernate バッグ - プロキシではなく実際のコレクション アイテム
NHibernate とバッグ内のプロキシ アイテムの使用に関して奇妙な問題が発生しています。私のマッピングは次のようになります。
私の理解では、多対多のマッピングを lazy="proxy" に設定することで、NHibernate は私のマーケット タイプとは異なるプロキシ オブジェクトを作成する必要があります。
ただし、デバッグを実行すると、実際の Market エンティティがインスタンス化されて Markets バッグに追加されていることが実際に確認できますが、これは発生すべきではありません。
私のマッピングは間違っていますか、それとも NHibernate はプロキシ オブジェクトとして自身の反映された型ではなく実際のエンティティを作成しますか?
よろしく、 アルバロ
nhibernate - Fluent Nhibernate - セットまたはバッグ コレクションの name 属性を設定するにはどうすればよいですか?
これはセットコレクションです:
name
属性を設定するにはどうすればよいですか?
performance - ペアのリストからバッグを抽出するための効率的なアルゴリズムは何ですか?
オブジェクトのペアのリストがあります。オブジェクトは、どちらの順序でもペアに表示できます。同じオブジェクト間のペアのすべてのバッグ (つまり、重複が許可されているセット) を見つけるための最も効率的なアルゴリズム (および実装) は何ですか? 私の目的では、オブジェクト参照はポインター、または名前、または同様の便利で短い有用な表現であると想定できます。個々のペアは識別可能です。ペアの両方の部分に同じオブジェクトを持つペアはありません。
ペアのリストが与えられた場合 (Oid はオブジェクト参照、Pid はペア参照)
返す必要があります: