FluentNHibernate IDctionary 具有多对多关系

发布于 2024-09-06 18:13:46 字数 714 浏览 6 评论 0原文

我有一个以这种方式构建的映射: public class Person

{
   public IDictionary<bool, Action> Actions { get; set; }
}

public class Action
{
   public string Name { get; set; }
}

// Map for Person

public class PersonMap : ClassMap<Person>
{
   public PersonMap()
   {
      Id(x => x.Id) ...
      Map(x => x.Name) ...
      Table("Persons")
   }
}

// Map for Action

public class ActionMap : ActionMap<Action>
{
   public ActionMap()
   {
      Id(x => x.Id) ...
      Map(x => x.Name) ...
      Table("Actions")
   }
}

我现在需要做的是这个。 我需要第三个表,其中包含以下字段:

PersonId 动作ID 对/错

因为我在类 person 中有操作集合,所以我正在考虑使用多个,但我找不到有关如何映射 IDictionary 的文档。 有什么想法吗?错误的做法?

I have a mapping structured in this way:
public class Person

{
   public IDictionary<bool, Action> Actions { get; set; }
}

public class Action
{
   public string Name { get; set; }
}

// Map for Person

public class PersonMap : ClassMap<Person>
{
   public PersonMap()
   {
      Id(x => x.Id) ...
      Map(x => x.Name) ...
      Table("Persons")
   }
}

// Map for Action

public class ActionMap : ActionMap<Action>
{
   public ActionMap()
   {
      Id(x => x.Id) ...
      Map(x => x.Name) ...
      Table("Actions")
   }
}

What I need to do now is this.
I need a third table that will contains this fields:

PersonId
ActionId
True/false

Because I have the collection of actions inside the class person i was thinking about using a manytomany, but I can't find documentation on how to map an IDictionary.
Any idea? Wrong approach?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

清浅ˋ旧时光 2024-09-13 18:13:46

不知道您是否已经找到了解决方案,但最近有一个更新(仅几周前),您可以简单地将其映射为 HasManyToMany(x => x.NameOfDictionary) 所以您可能想要更新您的 FNH。

我还没有尝试过,但这里是链接:邮件列表帖子

Dunno if you've already found the solution but there's been a recent update(only a couple weeks ago) where you could simply map it as HasManyToMany(x => x.NameOfDictionary) so you might want to update your FNH.

I haven't tried it yet though but here's the link: mailing list post

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文