2009-11-02 141 views
0

我是一个新的NHibernate开发人员。我正在使用属性,而不是映射文件,我已经配置应用程序自动创建表。NHibernate属性映射列表

我有两个类,组和用户。

Withing Group类的我有用户

public class Group 
{ 
    [NHibernate.Mapping.Attributes.Id(Name = "GroupId")] 
    [NHibernate.Mapping.Attributes.Generator(Class = "guid")] 
    public virtual Guid GroupId { get; set; } 
    // What Attributes do I place here 
    public virtual List<User> Users { get; set; } 
} 

我无法找到合适的属性,以便将存在有一对多的关系的两个表的列表。

任何人都可以帮忙吗?

感谢, 罗尼

回答

2

[ManyToMany][OneToMany][ManyToOne](那些与文档是相当无用虽然)这取决于你想要的设置。可能[OneToMany],然后在一个用户相同。

如果您还没有尝试过,则可以使用Fluent NHibernate库来避免痛苦。

+0

感谢您的回放,我尝试使用[OneToMany],但用户未保存。然后我尝试添加[List] [Key] [Index],并得到两种类型的错误。 “ ”意外的行数:0;预计:1“ ”对象引用未保存的瞬态实例...“ – Ronny 2009-11-02 09:50:07

+0

您是否先保存过用户? (对于NH2.x)是否在交易中? – 2009-11-02 12:50:59

+0

谢谢,这是问题:) 有没有办法让Hibernate自动保存孩子? – Ronny 2009-11-02 14:43:19