【发布时间】:2013-04-08 08:13:24
【问题描述】:
我刚刚开始使用 Fluent NHibernate,希望得到一些关于我如何映射它的帮助/指示。这是我正在使用的域模型:
类用户:您的标准用户类
类偏好:一组键值对。一个用户可以有很多偏好。
Class Post:为简洁起见省略了完整的描述,但用户创建了一个帖子,它可以包含一个或多个偏好。
所以,回顾一下:
class User
{
IList<Preference> Preferences;
IList<Post> Posts;
}
class Post
{
IList<Preference> PostData;
}
Hibernate automapper 提供了以下数据库结构:
User
------------------------
User_Id
Preference
------------------------
Preference_Id | User_Id | Post_Id
Post
------------------------
Post_Id | User_Id
偏好表在我看来很难看,更希望有类似的东西:
User
------------------------
User_Id
Preference
------------------------
Preference_Id | User_Id
Post
------------------------
Post_Id | User_Id | Preference_Id
非常感谢任何有关如何执行此操作的帮助!我已经有一个实现 IAutoMappingOverride 接口的类,但我不确定如何进行实际映射。
谢谢,
光辉
【问题讨论】:
-
Post 表中的 Preference_Id 有什么用?你说一个帖子有很多偏好。
Post.Preferences是否也包含与User.Preferences相同的元素? -
是的.. Post.Preferences 始终包含来自 User.Preferences 的数据。
标签: fluent-nhibernate automapping