1
nhibernateのスクリーンキャストの夏を終え、それを知識のために流暢に変換しようとしています。Fluent Hibernate Mappingヒッチ - サブクラスの間違ったカラム名を渡す
私は2つのクラス(非常に単純な)
public class Customer { ... }
public class PreferredCustomer : Customer { ... }
これらはtable per sub class
戦略に従うので、流暢なマッピングがそうである:それザッツ
CustomerMap -
//nothing related to PreferredCustomer - the spec says not required
public class PreferredCustomerMap : SubclassMap<PreferredCustomer>
{
Map(x => x.CustomerSince);
Map(x => x.OrderDiscountRate);
}
を。
SELECT customer0_.CustomerId as CustomerId1_0_,
customer0_.Version as Version1_0_,
customer0_.Firstname as Firstname1_0_,
customer0_.Lastname as Lastname1_0_,
customer0_1_.CustomerSince as Customer2_2_0_,
customer0_1_.OrderDiscountRate as OrderDis3_2_0_,
//here, customer0_1_.customer_id needs to be CustomerID really.
case when customer0_1_.Customer_id is not null then 1 when customer0_.CustomerId is not null then 0 end as clazz_0_
FROM [Customer] customer0_ left outer join [PreferredCustomer] customer0_1_ on customer0_.CustomerId=customer0_1_.Customerid
WHERE customer0_.Customer_Id=1
そのは明らかにのみPreferredCustomer上のテーブルに参加したことをやって: 私のテストでは、検査時に、カントはこれが休止状態で生成SQLで列customer_id
を見つけるSQLその文句を失敗しています。何が必要なのかを見つけ出す。
お願いします。
編集:どのように私は流暢に生産されたXMLを読むのですか?それは良いスタートになる可能性があります。
私は設定ファイルを見て、それを理解しました!私の質問を編集してあなたの答えを見たのです。私はこれがwikiの ''最初のプロジェクト ''ページに言及されるべきだと思います。ありがとう – iamserious