映射實體的集合我正在開發一個問題/答案基於應用在功能NHibernate
我有一個帖子表中的線沿線的分貝:
- ID
- 標題
- 身體
- dateCreated會
- 的AuthorID
- AUTHORNAME(萬一用戶未註冊)
- AutherEmail(如上)
- PostType(枚舉 - 1,如果問題,2如果回覆)
- 展(比特字段)
然後,有「PostBase」 - 這是一個抽象類(它具有以下列出的問題和答案共同的屬性) 然後我有一個內部「Post」類,它從PostBase開始下降,因此具有上面列出的所有屬性。
然後有一個Question類和一個Answer類。
兩者都使用Post作爲基類。
這裏是類:
public abstract class PostBase
{
{
get { return postCreatorEmail; }
//todo: add email address validation here?
set { postCreatorEmail = value; }
} private IList<Attachment> attachments = new List<Attachment>();
public PostBase()
{
//init logic here
}
public virtual DateTime DateCreated { get; set; }
public virtual string ID { get; set; }
public virtual string Body { get; set; }
public virtual DateTime DateLastModified { get; set; }
public virtual string PostCreatorName { get; set; }
public virtual string PostCreatorEmail { get; set; }
public virtual int PostCreatorID { get; set; }
public virtual PostType PostType { get; set; }
public virtual PostSource PostSource { get; set; }
public virtual bool Show { get; set; }
public IEnumerable<Attachment> Attachments { get { return attachments; } }
}
後
internal class Post : PostBase
{
public virtual List<string> Tags { get; set; }
public virtual string Title { get; set; }
public virtual string ParentPostID { get; set; }
}
問:
public class Question : PostBase
{
public Question()
{
tags = new List<string>();
}
public string Title { get; set; }
public List<string> Tags { get { return tags; } }
public int NumberOfReplies { get; set; }
}
答:
public class Answer : PostBase
{
public string QuestionID { get; set; }
}
我用automapper映射到/自答和郵政或問題和郵政
我想要做的,就是創建下面的類:
public class QuestionWithAnswers
{
public Question Question { get; set; }
public IEnumerable<Answer> Answers { get; set; }
}
這基本上有一個「問題」 - 請記住,這只是一個Post中的數據庫,ParentPostID爲0,並有一個答案列表(其中ParentPostID等於Question.ID ...或沿着這些行)
我的問題是 - 我該如何映射這在流利的nHibernate中?