1

主キーではなく、他の 2 つの列によってテーブル内の行を参照する必要があります。fluent-nhibernate でそれを構成するにはどうすればよいですか?

FluentNHibernate 1.3 を使用しています

例: 他のテーブル YY に主キーではない列 foo と bar (それが役立つ場合はデータ型が整数であると想定) がある場合。現在のクラス XX にはこれらのプロパティがあり、XX から YY オブジェクトを参照したいと考えています。ClassMap<XX>ローカル メンバーが YYObject で、それを参照するフィールドが XX.foo と XX.bar の場合、クラスに次を配置する必要がありますか?

CompositeId(x => x.YYObject).KeyProperty(x => x.foo).KeyProperty(x => x.bar);

ClassMap<YY>それに応じてクラスをどのように調整する必要があるかもよくわかりません。あなたがそのようなことをした場合、私たちはいくつかのガイダンスを使用することができます.

私たちはレガシーな状況に対処しているので、手を振ってすべてをなくすことはできません.

4

1 に答える 1

0

可能であれば、2 つのプロパティの周りにコンポーネントを定義します

Component(x => x.Comp, c =>
{
    c.Map(x => x.Foo);
    c.Map(x => x.Bar);
});

そしてそれを参照する

References(x => x.ParentObject)
    .KeyColumns.Add("parent_foo", "parent_bar");
    .PropertyRef(p => p.Comp);
于 2012-10-26T11:41:00.917 に答える