問題タブ [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.
nhibernate - ORMを選択する場合、LINQtoSQLまたはLINQtoEntitiesはNHibernateよりも優れていますか?
Linq toEntitiesやlinqtoSQLよりも、NHibernate、さらにはCastleでより多くのことができることがわかりました。
私は夢中ですか?
.net - プロパティをキャッシュしないNHibernate
ファイルをキャッシュしないように NHibernate を設定するにはどうすればよいですか?
HSQL を実行するメソッドを作成できることはわかっていますが、<class>.xml ファイルまたは hibernate xml ファイル自体の構成設定を使用して、プロパティをキャッシュしないようにすることはできますか?
nhibernate - NHibernate を使用した列挙型のコレクションのマッピング
NHibernate を使用した列挙型のコレクションのマッピング
具体的には、マッピングに属性を使用します。
現在、私はコレクションをタイプ Int32 としてマッピングする作業を行っており、NH がそれを処理しているように見えますが、それは正確には理想的ではありません。
マップしようとしている列挙型のコレクションをマップしようとすると、「型を特定できません」というエラーが表示されます。
クラスを次のように定義すると言った投稿を見つけました
次に、列挙型をCEnumTypeとしてマップしますが、これにより「CEnumTypeがマップされていません」または同様の結果が得られます。
それで、誰かがこれを行った経験がありますか?
とにかく、例を示すための単純な参照コードのスニペットです
では、この列挙型のコレクションを実際の列挙型としてマップするための正しい属性を誰かが取得しましたか? それらが int ではなく文字列としてデータベースに格納されていれば本当にいいのですが、完全に必要というわけではありません。
asp.net - イントラネット アプリケーションのデータベース認証
内部 Web アプリケーションからデータベース層へのエンド ツー エンド認証のベスト プラクティスを探しています。
私が見た中で最も一般的なシナリオは、アプリケーションが必要とする権限に設定された単一の SQL アカウントを使用することです。このアカウントは、すべてのアプリケーション呼び出しで使用されます。次に、ユーザーがクエリ ツールを介してデータベースにアクセスする必要がある場合、またはそのような別のグループがクエリ アクセスで作成され、ユーザーにそのグループへのアクセスが付与されます。
私が見たもう 1 つのシナリオは、完全な Windows 認証エンド ツー エンドを使用することです。したがって、ユーザー自身がすべての権限が設定されたグループに追加されるため、ユーザーはアプリケーションのパラメーターの外部で更新および変更できます。これには通常、テーブルを直接更新しないように、適切なストアド プロシージャに人を保護することが含まれます。
最初のシナリオは保守が比較的簡単に見えますが、アプリケーションにセキュリティ ホールがあり、データベース全体が危険にさらされている場合に懸念が生じます。
2 番目のシナリオはより安全に見えますが、データベースのストアド プロシージャに多くのビジネス ロジックが必要になるという反対の懸念があります。これにより、Nhibernate や LINQ などの非常に優れたテクノロジの使用が制限されているようです。しかし、人々が非常に多くの異なる方法でデータを使用できるこの時代では、たとえばマッシュアップなどは、これが最善のアプローチであるとは予測していません。
c# - NHibernate、Castle、Linqの違い-彼らは誰を対象としていますか?
この回答は、LinqがNHibernate、Castleなどとはわずかに異なる開発者グループを対象としていることを示しています。
C#はかなり新しいので、それを取り巻くすべてのDBを気にしないでください。
- NHibernate、Castle、Linqよりも優れた用語がないために他の主要なSQLラッパーはありますか?
- それらの違いは何ですか?
- 彼らはどのような開発者や開発を目指していますか?
-アダム
.net - デスクトップ アプリケーションでの NHibernate のセッション管理戦略はどのようなものですか?
HttpContext のような明確な束縛を利用できないため、デスクトップ アプリケーションでセッションを管理するのははるかに難しいと思います。では、アプリケーション全体に対して 1 つのセッションを開かずに、遅延読み込みを利用してセッションの有効期間を管理するにはどうすればよいでしょうか?
.net - NHibernate の軽量な代替手段
NHibernate は、すべての依存関係があるため、私たちの環境にはあまり適していません。(キャッスル、log4netなど)
優れた軽量の代替手段はありますか?
Access/SQLite/VistaDB などの単純なファイル ベースのデータベースのサポートは不可欠です。
理想的には、.NET アセンブリのみを参照する単一のアセンブリに含まれるものです。ボーナスである .NET Framework 2.0 または 3.0 のみが必要な場合。
.net - マルチテナント アーキテクチャと NHibernate
最後に、NHibernate を利用したドメイン モデルでマルチテナント機能の透過的で流暢なサポートを実装するための最良の戦略は何かを説明してもらえますか?
TenantID によるフィルタリングなど、マルチテナントのものからドメイン ロジックを可能な限り分離する方法を探しています。
c# - フィールドによってアクセスされるプロパティは引き続き遅延ロードされますか?
マッピング ファイルで field.camelcase を使用して、コレクション、依存エンティティなどを設定し、コレクションを読み取り専用配列として公開しています。アクセス戦略が遅延読み込みに影響しないことはわかっていますが、これがまだキャッシュされることを確認したいだけです:
c# - NHibernate、監査および計算列の値
ドメイン クラスを特別なプロパティで拡張せずに、NHibernate を介してエンティティを更新/挿入するときに、特別な列の値を設定するにはどうすればよいですか?
たとえば、すべてのテーブルには、CreatedBy、CreatedDate、UpdatedBy、UpdatedDate などの監査列が含まれています。しかし、これらのプロパティをドメイン クラスに追加したくありません。ドメイン モデルの永続性無視係数をできるだけ高く維持したいと考えています。