0

我发现了很多关于这个的帖子,但似乎没有一个能直接帮助我。此外,在 FluentNHibernate 开发的不同阶段,解决方案是否有效似乎也存在混淆。

我有以下课程:

public class MappedClass
{
    ...
}

public enum MyEnum
{
    One,
    Two
}

public class Foo
{
    ...
    public virtual IDictionary<MappedClass, MyEnum> Values { get; set; }
}

我的问题是:

  1. 我需要一个单独的(第三个)MyEnum 表吗?
  2. 如何映射 MyEnum 类型?我是不是该?
  3. Foo 的映射应该是什么样的?

我试过映射 HasMany(x => x.Values).AsMap("MappedClass")... 这导致:​​ NHibernate.MappingException : Association references unmapped class: MyEnum

4

1 回答 1

0

看起来这个问题是用于映射 IDictionary<SomeEntity, int> 的 Fluent 代码的副本?. 解决方案是使用 hbm.xml 映射三元关联表。看起来当时 FluentNHibernate 的 AsTernaryAssocation() 方法仅适用于实体类型。我不知道这是否已经改变,或者它是否是计划中的功能。

于 2010-02-04T20:09:52.150 回答