問題タブ [automapping]
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.
fluent-nhibernate - Fluent NHibernateの自動マッピングでIUserTypeを操作するにはどうすればよいですか?
IUserTypeを実装したカスタムタイプがあります。私のドメインクラスの1つに、このカスタムタイプのプロパティがあります。
このドメインで自動マッピングを機能させたいのですが、「テーブルxyzからの関連付けは、マップされていないクラスを参照しています:PersianDate」と表示されます。
PersianDateは私のカスタムタイプです。これは参照ではなく、文字列列に収まるカスタムユーザータイプであることを自動マッピングにどのように伝える必要がありますか!!!
インターネットにあるものをすべて検索しましたが、ここに何か問題があると思います
私がそれを修正するのを手伝ってくれませんか
.net - Fluent NHibernate 自動マッピングで名前空間によって基本型/クラスを無視する方法はありますか?
現在、次のコードを使用して、Fluent NHibernate 自動マッピングで基本型を無視しています。
私が持っているすべての基本型に対してメソッドMyCore.BaseTypes
を使用する代わりに、名前空間 (つまり ) によって基本型を無視する方法はありますか?IgnoreBase()
これを達成するために拡張クラス(つまり)でオーバーライドShouldMap(Type)
されたメソッドを使用してこれを達成しようとしましたが、それでも基本型をマップしようとしました:DefaultAutomappingConfiguration
MyDefaultAutomappingConfiguration
c# - FluentNHibernate自動マッピングを使用した複数の双方向の1対多の関連付けの作成
私はNHibernateと.NETフレームワークにかなり慣れていません。
1対多の関係のSubprojectクラスとProjectTaskクラスを持つProjectクラスをマップしたいと思います。
私のエンティティは、抽象基本クラスからIdプロパティを継承します。
自動マッピングを使用してオーバーライドし、マッピングを再定義します。
サブプロジェクトクラスとの関連付けのみをマップすると、すべてが正常に機能し、Project.Subprojectsのサブプロジェクトクラスのすべてのインスタンスがデータベースに正しく保存されます。ProjectTaskクラスに2番目のオーバーライドを使用すると、次の例外が発生します。
---> NHibernate.HibernateException:データベースに「ProjectId」という名前のオブジェクトがすでに存在します。制約を作成できませんでした。以前のエラーを参照してください。
---> System.Data.SqlClient.SqlException:データベースに「ProjectId」という名前のオブジェクトがすでに存在します。
誰か知っていますか、なぜこれが起こるのですか?
nhibernate - UseOverridesFromAssemblyOf を使用した autopmapping は、基本クラスのオーバーライド クラスを呼び出さない
私は流暢な nHibernate で自動マッピングを使用しています。
私のオーバーライドクラスは次のようなものです:
ここで、 Reader は抽象基本クラスです。サブクラスごとに個別のオーバーライド クラスを使用すると、問題なく動作します。抽象クラスのすべてのサブクラスのオーバーライドを定義する方法はありますか?
ありがとう、
ジョニー
nhibernate - NHibernate には、複数の多対 1 参照を含む孫テーブルとの関係が多数あります
次のように定義された 3 つの既存のテーブルがあります。
エンティティは次のように定義されます。
私は次のオーバーライドを試しました:
BusinessUnit
自動マッピングのオーバーライド:
Category
自動マッピングのオーバーライド:
列名を処理する多対多の規則があるので、ここで指定する必要はないと思います (または、少なくともそうは思いません)。自動マッパーは、 の多対一参照を処理しParagraph
ます。
has-many マッピングはBusinessUnit
機能しません。どうすればこれを取り除くことができますか?
nhibernate - S#arp アーキテクチャでの 1 対 1 のマッピング
頭から回路が焼けた独特の匂いがするので、私の無知を許してください。
S#arp Architecture で 1 対 1 の関係をセットアップしようとしています (Automapper に任せてください)。
私は持っている
そして、私のデータベーススキーマは
MappingIntegrationTests で単体テスト CanConfirmDatabaseMatchesMappings を実行すると、次のエラーが表示されます
NHibernate.ADOException : クエリを実行できませんでした ... System.Data.SqlClient.SqlException : 列名 'ProfileFk' が無効です。列名「BasketFk」が無効です。
実行しようとしているSQLは
そのため、Users テーブルで ProfileFk フィールドと BasketFk フィールドを探しています。私はカスタマー オーバーライド マッピングを設定していません。私が確認できる限り、S# で設定されている既定の規則に従っています。
IList Orders と Roles の他の 2 つのマッピングは、適切にマッピングされているようです。ですから、1 対 1 の関係を設定するための何かが欠けていると思います。
私は何が欠けていますか?
nhibernate - 自動マップされた親のSaveOrUpdate()は、すべての子外部キーをNULLに設定します
FluentNHibernateとNHibernate.Core3ベータ1を使用しています。2つのクラスがあります。
私は自動マッピングを使用しています。これにより、期待するスキーマが生成され、ほとんどの場合、期待どおりに機能しているように見えます。
プロモーションを保存/作成するには、次のアクション(ASP.NET MVC 3 RC)があります。
これにより、予期される「update Promotion ...」クエリが実行されますが、以下も実行されます。
これを防ぐにはどうすればよいですか?
私の唯一の推測は、Promotionオブジェクト(ASP.NET MVCによって構築されたためNHセッションにアタッチされていない)に空のリストが表示されていることです。これは、子のPromotionEntrantsが存在しないことを意味します。これを防ぐために、次の自動マッピングオーバーライドを作成しましたが、違いはありません。
どんな助けでも大歓迎です。
fluent-nhibernate - union-subclass オプションを使用した nhibernate 自動マッピング
ここで ayende (unioned subclasses)で説明されているように、基本クラスとその派生クラスを 2 つの異なるテーブルに (自動) マップしたいと考えています。
ただし、流暢な nHibernate のドキュメントによると、それを行う方法がわかりません。
彼らが参照する IAutoMappingOverride のプロパティは「IsDiscriminated」ですが、それは階層ごとのテーブルとサブクラスごとのテーブルの間でのみ区別されます。
自動マッピングが結合サブクラスをサポートしていない可能性はありますか? もしそうなら、誰かが回避策を提案できますか?
ありがとう、
ジョニー
c# - C# - ニバネートの質問
次のテストケースで特に混乱しています。
ご覧のとおり、自動マッピングを試していますが、残念ながら、次のテスト ケースでは次の SQLite 例外が発生します (最初の例には、実行された実際のクエリが含まれています)。
そして、なぜこのようになるのか理解できません.SQLコマンドは適切に機能しているようで、対応するテーブルはcreate table
クエリによって作成されるはずです。
コードに何か問題があると思います (おそらく何かを見逃しています)。私たちを手伝ってくれますか?
asp.net-mvc - Castle Windsor、Fluent Nhibernate、およびAutomappingIsessionのクローズド問題
私はCastleWindsor、Nhibernate、Fluent、Automappingスタック全体に慣れていないので、ここで私の無知を許してください。Windsor nhib Isession管理の問題を解決しようとする質問はすでに多数あるように思われるため、これについて別の質問を投稿したくありませんでしたが、これまでのところ、いずれも私の問題を解決していません。リポジトリからDbを呼び出そうとすると、ISessionが閉じた例外が発生します。これがコンテナのセットアップコードです。
私のリポジトリでは、次のように注入private readonly ISession session;
して使用します
内の私のweb.configで<httpModules>
。私もこの行を追加しました
私はまだここでパズルの一部を見逃しています。これが、nHibernateとCastleWindsorを使用したWebアプリケーション開発の基本的なニーズに合わせて構成するのにこれほど複雑なことだとは信じられません。
私はここのコードに従おうとしていますwindsor-nhibernate-isession-mvcまったく同じ問題があるように見えたので、そこに質問を投稿しましたが、私の質問は解決されていません。
UPDATE MooKid8000私は今、私の城の登録コードをこれに更新しました
しかし、まだISessionがクローズされている問題が発生しています。サービスも一時的なものとして登録する必要がありますか。シングルトンではなく一時的なものにする必要がある理由を詳しく説明してください。
UPDATE MooKid8000の提案は100%正しかったので、ISessionが消去されないように、すべてがLifestyleType.Transientとしてスコープされているサービスとリポジトリを確認する必要があります。私の城の登録コードを最初に見なくても素晴らしいスポットMookid8000。
興味のある方は私に連絡してください。コンテナのセットアップをお送りします。