問題タブ [nhibernate]
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.
.net - Spring.NET アセンブリと NHibernate アセンブリ間の非互換性の解決
NHibernate と Spring.NET を使用して .NET Web プロジェクトを開発しようとしていますが、行き詰っています。Spring.NET は、さまざまなバージョンの NHibernate アセンブリに依存しているようです (おそらく 1.2.1.4000 が必要で、私の NHibernate のバージョンは 1.2.0.4000 です)。
私はもともと「bindingRedirect」タグを使用して同様の問題を解決していましたが、今ではそれも機能しなくなりました。
これらのライブラリ間の関係を解決する簡単な解決策はありますか?
c# - Fluent NHibernate 多対多
Fluent NHibernate を使用していますが、クラスの 1 つと多対多の関係をセットアップする際に問題が発生しています。それはおそらくばかげた間違いですが、私はそれを機能させようとして少し立ち往生しています。とにかく、多対多の関係を持ついくつかのクラスがあります。
このようなマッピングで
人: ...
グループ: ...
統合テストを実行するとき、基本的には新しい個人とグループを作成しています。グループを Person.GroupsOwned に追加します。リポジトリから Person オブジェクトを取得すると、GroupsOwned は最初のグループと同じですが、Group.Admins のカウントを確認するとグループを取得すると、カウントは 0 になります。Join テーブルには GroupID があり、そこにPersonIDが保存されています。
アドバイスありがとうございます。
nhibernate - Strict vs NonStrict NHibernate キャッシュ同時実行戦略
この質問は、NHibernate の第 2 レベル キャッシュの ReadWrite と NonStrictReadWrite キャッシュ同時実行戦略の違いに関するものです。
私が理解しているように、これら2つの戦略の違いは、分散複製キャッシュがある場合に関係があります.非厳密は、1つのキャッシュが別のキャッシュとまったく同じ値を持つことを保証しませんが、厳密な読み取り/書き込みは保証する必要があります-キャッシュプロバイダーがそうすると仮定します適切な分散ロック。
私が理解していない部分は、単一のキャッシュ、または分散パーティション化された(複製されていない) キャッシュがある場合に、厳密な対非厳密な区別がどのように関連するかです。それは関連することができますか?レプリケートされていないシナリオでは、タイムスタンプ キャッシュによって古い結果が提供されないように思われます。関連性がある場合は、例を見てみたいと思います。
c# - NHibernate でのユーザー定義フィールド
NHibernate を使用する asp.net c# アプリケーションにユーザー定義フィールド機能を追加する必要があります。
ユーザーは、できればシステムのダウンタイムなしで、システム内の複数のオブジェクトのフィールドを「その場で」追加および削除できる必要があります。
重要な制約の 1 つは、ユーザーがデータベース スキーマを変更できないことです。つまり、この機能をサポートするために必要なフィールド/テーブルを追加できますが、ユーザーがフィールドを追加または削除した場合、データベース スキーマを変更することはできません。 .
編集:ユーザー定義フィールドの値でソートおよびフィルタリングする必要もあります。
キー/値テーブルを使用して C#/SQL で行う方法は知っていますが、NHibrenate で行う方法がわかりません (ユーザー定義フィールドによるフィルタリングと並べ替えを含む)。
nhibernate - NHibernate マッピング ファイルから「移行」DDL を生成するにはどうすればよいですか?
プロジェクトで NHibernate 2 と PostgreSQL を使用しています。SchemaExport クラスは、データベースの DDL スキームを生成する優れた仕事をしますが、最初のアプリケーションまでは優れています。
NHibernate マッピング ファイルを使用して "移行" DLL (DROP/CREATE ペアの代わりに "ALTER TABLE" のバッチ) を生成する方法はありますか?
sql - nHibernate サブクエリの結果のカウント (*) を選択する方法
nHibernate でクエリをページングするには、次のことを行う必要があります。
私は次のことを試しました、
そして、オブジェクトを int32 に変換できないという nHibernate 例外が発生します。
必要な構文に関するアイデアはありますか?
編集
サブクエリは明確な句を使用します。有効な構文ではなく、意味がないCount(*)
ため、e.ID、e.Name を置き換えることはできません。Count(*) distinct
distinct count(*)
security - NHibernateを使用するときにセキュリティを実装するためのベストプラクティスは何ですか?
伝統主義者は、ストアドプロシージャは、NHibernateなどのオブジェクトリレーショナルマッピング(ORM)フレームワークを使用する場合よりも優れたセキュリティを提供すると主張しています。
その議論に対抗するために、適切なセキュリティが実施されていることを確認するためにNHibernateで使用できるいくつかのアプローチは何ですか(たとえば、SQLインジェクションの防止など)?
(回答ごとに1つのアプローチのみを提供してください)
nhibernate - nHibernate でキャッシュを完全に無効にするにはどうすればよいですか?
nHibernate でキャッシュを完全に無効にするにはどうすればよいですか?
nhibernate - NHibernate で並行性をどのように処理しますか?
NHibernate を使用して楽観的/悲観的な同時実行をどのようにサポートしますか?
sql - NHibernateトランザクションと競合状態
NHibernateを使用してユーザーアクション時にいくつかのテーブルをトランザクションで更新するASP.NETアプリがあります。排他的な日付が指定されるように、テーブル「予約」へのエントリを1つだけ作成できる日付範囲があります。
私の問題は、2つのユーザーアクションがほぼ同時に発生し、1日を超える「予約」に複数のエントリが発生する競合状態を防ぐ方法です。.Commit()を呼び出す直前に確認することはできません。それでも、競合状態のままになると思いますか?
私が見ることができるのは、コミット後にチェックを行い、変更を手動でロールバックすることだけですが、それは私の口に非常に悪い味を残します!:)
Booking_ref(INT)PRIMARY_KEY AUTOINCREMENT
Booking_start(DATETIME)
Booking_end(DATETIME)