問題タブ [mapping-by-code]
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 - SchemaExportを使用する場合は、列を名前で並べ替えます
私は次のようなレガシーdb構造を持っています
とクラス
MappingByCodeまたはFNHでマッピングした後、SchemaExportは間違った順序で列を作成します。
列が昇順で作成されていることを確認するにはどうすればよいですか?
nhibernate - コードによるマッピングを使用してエンティティクラスのプロパティを必要とせずに、データベース列を定数値に変換
これは、 NHのコードによるマッピングを使用することを除いて、この質問とほぼ同じです。
また、SchemaExportを使用して、それぞれのスクリプトを作成/保守する必要なしに、さまざまなrdbmsのデータベースを作成したいので、仮想プロパティが本当に必要です。
たぶん、MbCでそれを行う方法を知っているMbCの達人がいます
更新:明らかな単純なコード
動作しません
神はMbCがリフレクションで内部的にチェックする理由を知っているので、プロパティがクラスに存在することもこれを行いません。
また、ClassMappingでオーバーライドしてリフレクションを使用してテストを無効にしてRegisterProperty()
も、hbmの不満を構築している間はスローされます。
コードによるマッピングはFNHよりも柔軟である必要がありますか?どこ?
nhibernate - 複合 ID を持つクラスのサブクラス
次の hbm.xml マッピングは MappingByCode で可能ですか?
nhibernate - NHibernate の 1 対 1: AccountDetail 用に生成された null ID
一意の制約を持つ多対 1 を使用して 1 対 1 の関係をマッピングすると、「AccountDetail に対して生成された null id」という例外が発生しました。
これが私のSQLテーブルです:
AccountId は主キーと外部キーの両方です。
これが私のドメイン モデル (アカウントとアカウントの詳細) です。
マッピング (コードによる NHibenrate 3.3 マッピング):
ところで: AccountDetail の AccountId プロパティを削除できますか? つまり、Account プロパティのみを使用します。AccountDetail クラスで AccountId と Account プロパティの両方を使用することは、オブジェクト指向ではないように見えます。
ありがとう!
c# - HbmMapping を Xml に nhibernate
クラスをマップするためにNHibernateのコードによるマッピングを使用しています。
NHibernate の構成をデバッグするために、NHibernate に渡された設定を正確に確認する必要がある場合があり、コードごとにマッピングをデバッグするのは非常に困難です。
手で入力したかのように、生成された HbmMapping を Xml ファイルに戻す方法はありますか?
これは、問題が私のマッピングにあるのかどうかを診断するのに大いに役立ちます!
nhibernate - NHibernate 3.3 での継承のマッピング
以下に説明する継承があります:
NHibernate 3.3 を使用しており、その継承のマッピングを作成したい
アプリケーションが起動してデータベースをセットアップしようとすると、次の例外が発生します。 SuperUser のあいまいなマッピング 複数のルート エンティティが見つかりました BaseEntity / ApplicationUser
考えられる解決策 - ルート エンティティのマッピングを階層内の実際のルートを表すものにマージします - 実際のルート エンティティを検出するロジックを IModelInspector に挿入します。
私は同じ継承でFluent nhibernateを使用していましたが、パブリッククラスとして定義された SuperUserMap で正常に動作しました SuperUserMap : SubClassMap {...}
コードによる Nhibernate マッピングは初めてで、かなり混乱しています !!!
c# - コードによるマッピングと流暢な nhibernate を使用しない nhibernate を使用したエンティティ ID の条件付きマッピング
現在、3.3 の nhibernate を使用して、流暢な nhibernate から 3.2 のコード (Loquacious) によるビルドのマッピングに変換しようとしています。
私が抱えている問題は、タイプに応じた Id 列の条件付きマッピングです。
私は現在、エンティティIDがタイプguidであると想定する、これに似たものを使用しています。
エンティティが文字列を使用している場合 (既定では割り当て済み) を構成/セットアップするにはどうすればよいですか?
GUID を ID として使用していないすべてのエンティティに対してカスタム マッピングをオーバーライドする必要がありますか?
nhibernate - コードによるNHibernateマッピング:慣例によるuserTypesのマッピング
NHibernateの「コードによるマッピング」を構成して、特定のタイプのプロパティをマップするときに、特定のuserTypeを使用してそのマッピングを実行する方法を知りたいです。これは慣例により理解されます。
たとえば、タイプAccount
がのプロパティを持つクラスがある場合、NHibernate構成は、マッピングを実行するためにを使用する必要があることを(慣例により)把握する必要があります。Currency
Currency
CurrencyUserType
これに関連するドキュメントが見つからないため、そのようなドキュメントが存在する場合は、いくつかのリンクもありがたいです。
注:これはFluentNHibernateの質問ではありません。
nhibernate-mapping - コードによるNHibernateマッピングマップコレクション
xmlマッピングからコードベースのマッピングに移行しています。NHibernateMapコレクションで発生している問題があります。
以下は完全に機能するxmlマッピングです(少し単純化されており、実際にはより多くのプロパティとコレクションがあります):
私が思いついた代替コードマッピングは次のとおりです。
上記は、マップの次のhbmlを生成します。
ここには明らかにインデックス列がありません。したがって、SQLを生成するとき、nhibernateはidxであるDefaultIndexColumnNameを使用します。
では、問題は、マップのインデックスをどのように設定するかということです。
更新:休止状態のドキュメントによると、map-keyを使用する必要があります。では、質問を言い換えると、map-keyのcolumnプロパティをどのように設定しますか?