問題タブ [fluent]
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.
join - Fluent NHibernateは、別のテーブルから単一の列を結合します
Fluent NHibernate を使用しており、2 つのテーブルがあります。
顧客 [ID、名前、LanguageID]
言語 [ID、説明]
次のプロパティを持つ Customer エンティティがあります。ID、名前、LanguageID、言語
私がやりたいことは、Languages テーブルに参加して言語の説明を取得し、それを顧客エンティティの言語プロパティに入れることです。
Join を使用してみましたが、customer テーブルの LanguageID フィールドを使用して Languages テーブルに結合することができません。'ID' を使用したいと思っています。
私のマッピングは次のようになります。
nhibernate - 複合IDの自動マッピングをオーバーライドするにはどうすればよいですか?流暢なnhibernateとの1対多の関係ですか?
私はセキュリティ情報について複数のシステム(ドメイン)をポーリングしているので、domainUsersとその役割を扱っています。以下に示すようにエンティティを設定しましたが、AutoMapperオーバーライドでdomainUser.HasMany関係を設定するのに問題があります。
これをはるかに単純にするdomainUser.DomainUserIdとrole.RoleIdがないことに気付くでしょう(compositeIdsはありません)。すでに自然な複合キーを持っているので、これらのフィールドを避けました。このデータをダウンストリームドメインから取得します。これらの人工キーを追加する場合は、session.Merge(domainUser)を呼び出す前に、それらの値をプリフェッチする必要があります。私はそれを避けようとしています。
エンティティオブジェクトは明らかです(私は願っています)が、これが私が持っているものです。
と
私のデータベーススキーマは非常に単純です。
代替テキストhttp://lh6.ggpht.com/_MV6QGBD11JE/S3iX2qcP_jI/AAAAAAAAEE0/PGIO07BlCSo/s800/Untitled.gif.jpg
IAutoMappingOverrideクラスをこのように開始しました。しかし、私は役割のためにhasManyを設定する方法に迷っています。それは私に与え続けます
これらの両方のフィールドを使用するように外部キーを設定するにはどうすればよいですか?
nhibernate - クエリの実行に長い時間がかかるNHibernate
これはFluentNHibernateを使用して行われています
1つのテーブルからデータを取得するNHibernateルックアップがあります。生成されたSQLを取得し、クエリアナライザーで実行すると、実行に約18ミリ秒かかります。
NHProfilerを使用すると、このクエリの期間は〜1800msになります-SQLの100倍です!
移入されているオブジェクトには子クラスが含まれていますが、この子はNHibernateの第2レベルのキャッシュからロードされています
返されるデータはページングされます(クエリごとに50)が、私が知る限り、これは何の違いもありません。
また、カウントを実行しています。これも、クエリアナライザで最大4ミリ秒、NHProfilerによると最大1800ミリ秒かかります。
NH Profilerは、クエリの実行時間、またはクラスを取得、マッピング、オブジェクトグラフを作成するための完全な時間を表示していますか?前者の場合、クエリを直接実行するよりもはるかに時間がかかるのはなぜですか?
編集:NHプロファイラーで指定されたクエリ期間の値に関するAyendeによるこの投稿を見つけました:http://ayende.com/Blog/archive/2009/06/28/nh-prof-query-duration.aspx-それは間違いなくです時間がかかっているデータベースのクエリ
nhibernate - Fluent nHibernate を使用した継承とツリー構造の混合
私が設計しているモデルの一部は、階層の地理的な場所です。複数のレイヤーがあり、いくつかの情報を共有しているため、次のようなクラス階層を使用することにしました。
これをマッピングするために、私は table-per-class-hierarchy メソッドを使用しています。Fluent nHibernate マッピングは次のようになります。
これが私の質問です:
ノードを取得して ParentNode (または子) にアクセスしようとすると、そのタイプは実際には GeographicNode であり、適切なサブクラスではありません。たとえば、Region ノードを取得し、その親が Country ノードであると想定されている場合、ParentNode を Country クラスにキャストできません。
nHibernate に、ParentNode および Child オブジェクトを適切なサブクラスでインスタンス化させる方法はありますか? この情報は Type 列に格納されるため、nHibernate が正しいサブクラスをインスタンス化するのは合理的と思われます。
また、ここで継承を使用することに大きな懸念はありますか? クラス階層を使用すると、(少なくともモデルでは) コードの量が削減されますが、これらの明示的ではなく暗黙的な関係 (たとえば、地域の親は常に国) を使用すると、後で問題が発生する可能性があるのではないかと心配しています.. .
ありがとう!
c# - ある場合、どの Fluent WCF フレームワークを使用する必要がありますか?
使用する価値のある Fluent WCF インターフェイスはありますか?
次のようなものかもしれません: http://www.markharris.net.au/blog/category/net/wcf-net/ http://code.google.com/p/vitamink/ http://www.simonsegal.net /blog/2009/03/15/if-i-had-a-fluent-interface-for-wcf-configuration-i-would/
誰かがこれらのいずれかを試しましたか?どれが最高ですか?
nhibernate - モデルでインターフェイスを使用すると、「関連付けがマップされていないクラスを参照しています」というエラーが発生する
次のモデルとプログラムの DDL を生成するために fluent で automap 機能を使用しようとしていますが、NHibernate で GenerateSchemaCreationScript メソッドを呼び出すと、どういうわけか "関連付けがマップされていないクラスを参照しています: IRole" というエラーが発生し続けます。IList のタイプをインターフェイス (ユーザーとロール) の実装に置き換えると、すべて正常に動作します。ここで何が間違っていますか?Unity で定義されている IUser と IRole の実装バージョンを流暢に使用するにはどうすればよいですか?
次のプログラムを使用して、NHibernate の GenerateSchemaCreationScript を使用して DDL を生成します。
nhibernate - 流暢なNHibernate多対1マッピング
私は冬眠の世界に不慣れです。ばかげた質問かもしれませんが、私はそれを解決することができません。私はテーブルの多対多の関係をテストし、レコードを挿入しようとしています。DepartmentテーブルとEmployeeテーブルがあります。ここでは、従業員と部門が1対1の関係にあります。FluentNHibernateを使用してレコードを追加しています。以下のすべてのコード。plsヘルプ
SQLコード
クラスファイル
マッピングファイル
追加するマイコード
ここで私はエラーが発生しています
InnerException ={"無効な列名'Dept_id'。"}メッセージ="挿入できませんでした:[Project.Model.Employee] [SQL:INSERT INTO [Employee](EmpName、EmpAge、DeptId、Dept_id)VALUES(?、?、 ?、?); select SCOPE_IDENTITY()] "
nhibernate - マップにhbmファイルを使用しない流暢なnhibernate名前付きクエリ
名前付きクエリを作成し、現在流暢なマップとして定義しているマップの 1 つで使用する必要があります。
流暢なマップを引き続き使用して、名前付きクエリをコードで動的に作成することは可能ですか? または、hbm マップへの切り替えが唯一のオプションですか?
php - 基本クラスからランタイムの戻り値の型を認識するために PDT コード補完を取得しますか?
私は抽象基本クラスを持っています:
一般に、CLASSNAME がある場所に BaseClass を配置すると、すべて問題なく、PDT は phpdoc の戻り値の型を取得し、喜んでオートコンプリートします。
つまり、BaseClass をサブクラス化してメソッドを追加し、コードが派生クラスのインスタンスで競合するまでは。PDT は BaseClass からのメソッドのみを認識し、派生クラスからのメソッドは認識しません。
必要なのは @return self や @return this のようなものです。
PDT にはそのような機能がありますか? または、すべての派生クラスでこれらのメソッドを宣言する必要のない別のトリックはありますか?
nhibernate - 複合要素マッピングを備えた流暢な NHibernate IDictionary
私はこれらの2つのクラスを持っています:
これはxmlマッピングです
Fluentで書きたいと思います。私は似たようなものを見つけて、このコードで試していました:
しかし、CategoryResourceエンティティをCategory要素内の複合要素としてマップする方法がわかりません。
何かアドバイス ?
ありがとう