問題タブ [fluent-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.

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

fluent-nhibernate - FluentNHibernate: Examples.FirstProject を機能させる

最も基本的な例を FnH で実行しようとしています。私は Examples.FirstProject から始めました。ただし、SQL lite 構成は使用しませんでした。代わりに、構成を SQL2005 に設定し、例に示されているようにテーブルを作成しました。

コードをステップ実行すると、セッション ファクトリの作成時に問題がないように見えます。ただし、コードが「transaction.commit」行に到達するとエラーが発生します。エラーは次のとおりです。

SQL Server でのテーブルの作成方法に問題があったのではないかと考えています。IDは「int」型で、名前などは「varchar(50)」でした。Store、Product、Employee の PK をそれぞれの ID フィールドに設定します。また、ID を自動的に 1 ずつ増やしました (SQL Server の IdentitySpecification 列プロパティ)。StoreProduct は多対多であり、図にもあります。

どんな助けでも大歓迎です。ありがとう。

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

nhibernate - NHibernate Fluent と属性

メンテナンスの問題を解決するために、いくつかの NHibernate 構成/マッピングをコードに移動することに興味があります。Fluent NHibernate と NHibernate.Mapping.Attributes のアドバイス/長所/短所/比較を提供できる人はいますか?

私は Java Hibernate アノテーションの経験があり、気に入っていますが、NHibernate 属性が同等かどうか、および Fluent が考慮すべき大きな利点/欠点を提供するかどうかに興味があります。

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

fluent-nhibernate - NHibernateのヌル値オブジェクト

値オブジェクトとしてアドレスを含む個人エンティティがあります。

NHibernateのドキュメントには、値オブジェクトのすべてのプロパティ(Address1、Address2など)がnullの場合、コンポーネント全体がnullとしてマップされる(つまり、Person.Addressがnullになる)と記載されています。これは、すべてのアドレスフィールドがnullの場合に問題を引き起こします。これは、私のページで(ASP MVCを実行している)次の理由で発生する可能性があるためです。

これはnull参照例外で壊れます。したがって、手動で行わずにデータベースからPersonをロードするときにすべてのフィールドが空の場合、Addressをnullではなく新しいAddress()オブジェクトとして設定するクリーンな方法を探しています。私は次のアイデアを割り引いた:

私の見解でヌルチェックを行う(yuk、恐ろしい)

データベースフィールドをnull許容不可にする(私はレガシーデータベースを扱っています)

誰かアイデアはありますか?

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

nhibernate - 関係の片側すべてを含むNHibernateManyToMany関係

このdbスキーマを考えると(それは私に受け継がれました):

スキーマ
(出典:robtennyson.us

これをモデル化する方法と、fluent-nhibernateを使用してマッピングする方法の両方についての提案が必要です。

私が思いつくことができるのは、非常にアクティブなレコードスタイルのモデリング(各テーブルのクラスと明らかな関連付け)だけです。

ただし、dbを少し無視すると、すべてのファシリティにすべてのコンプライアンスフラグのリストが常にあるようにしたいと思います。このようにして、フラグ「XX」の準拠日を施設に尋ねることができます。

それが正しい方向へのほんの少しの微調整であるとしても、どんな助けもいただければ幸いです。

ありがとう、ロブ

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

nhibernate - Fluent NHibernate の自動マッピングを使用した「具象クラスを持つテーブル」マッピング

「具象クラスを持つテーブル」継承を使用してオブジェクトを自動マップするように Fluent NHibernate を構成できるかどうかは誰にもわかりません。自動マッピング (ファイルに書き込んだ) を見ると、EntityBase から派生したエンティティが多数ありますが、Id 列を EntityBase テーブルではなく各テーブルに配置したいと考えています。

Fluent ドキュメントを精査しましたが、これに関連するものは何も表示されません。

前もって感謝します。

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

nhibernate - これをNHibernateでマップするにはどうすればよいですか

Survey クラスと Poll クラスの 2 つのクラスがあります。また、質問と質問選択のクラスもあります。これらをどのようにマッピングすれば、特定のテーブル形式を作成できますか。関連するクラスは次のとおりです。

私が撮影している結果のテーブルには、次のものが含まれます

できれば、Fluent NHibernate について本当に知りたいか、xml をマッピングするだけでもかまいません。

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

nhibernate - NHibernate: 親に応じて同じクラスを複数のテーブルにマップする

複数のクラスに値の型のリストがあるモデルがあります。

Foo と Bar は、両方にこれらの val が含まれていることを除けば、無関係です。ValTypes の追加、削除などのルールはクラスごとに異なります。このデザインをコードに残したいと思います。

たとえば、いくつかの Val を Foo から Bar にコピーしたい場合があります。データベースでは、各 ValType に独自のテーブルがあり、サイズを小さく軽量に保ち (親 ID + 2 つのフィールドのみ)、整合性チェックを可能にします。NHibernate が、オブジェクトをデータベースと同じくらい細かく保つべきだと言っていることは知っていますが、それは私のコードを醜くするだけです。

私がこれまでに考えた最善の方法は、ValType の個別のサブクラスを、親ごとに 1 つずつ作成することです。次に、そのレベルでそれらをマッピングできます。次に、追加ロジックと削除ロジックを接続して、適切なサブクラス間で自動変換し、適切なサブクラス タイプを持つプライベート リストにそれらを実際に格納します。しかし、これは少し複雑だったようです。

これをNHibernate(可能であればFluent NHibernate)でどのようにマッピングできますか?

これが重複している場合はお知らせください。これを検索する方法がよくわかりません。

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

fluent-nhibernate - 流暢なnhibernateでコンベンションのカスケードルールをオーバーライドするにはどうすればよいですか

私は2つのクラスがあります

次の規則で:

そしてこれらのマッピングはオーバーライドします

カスケード動作を変更するには、IClassConvention for Documentを作成する必要があることを理解していますが、これを機能させることはできません。私がこれを行う場合:

「'cascade'属性は宣言されていません。」

私がこれを行う場合:

それから私は得る:

だから私は追加しました:

私のドキュメントマッピングに、しかしファイルは常に空です。私は何が間違っているのですか?単一のHasMany関係のカスケードルールをオーバーライドするにはどうすればよいですか?アンドリューありがとう

PSこれとのクロスポストについては申し訳ありませんが、私はこれをできるだけ早く解決する必要があります。

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

nhibernate - 次の SQL スキーマのエンティティ データ クラスを最適に設計するにはどうすればよいですか?

次のデータベース スキーマがあります。

http://lh4.ggpht.com/_SDci0Pf3tzU/SdM3XnAmmxI/AAAAAAAAEps/Ie3xW3ZVNfQ/styleerror.png

問題は、Nhibernate でエンティティ データ クラスを作成する方法ですか?

これは良いですか:

}

それともこちらの方がいいですか?public class Store { public virtual int Id { get; プライベートセット; } パブリック仮想文字列名 { get; 設定; }

}

後者よりも前者の方が分かりやすいと思いますよね?