我正在开发一个使用比赛结果/时间等模型的应用程序。
我有一个看起来像这样的模型:
public class Competitor
{
public virtual int ID { get; set; }
public virtual string Name { get; set; }
public virtual DateTime DateOfBirth { get; set; }
}
public class Event
{
public virtual int ID { get; set; }
public virtual string Name { get; set; }
public virtual string Description { get; set; }
}
public class Result
{
public virtual int ID { get; set; }
public virtual decimal ResultTime { get; set; }
public virtual Competitor Competitor { get; set; }
public virtual Event Event { get; set; }
}
在我的数据库中,我只能访问代表数据“平面”视图的视图。这看起来像是:
vResult
ResultID
ResultTime
CompetitorID
CompetitorName
CompetitorDateOfBirth
事件ID
事件名称
EventDescription
所以,我试图避免让一个完全匹配上述“扁平”模式的类(如果可能的话)
是否可以使用Fluent nHibernate进行映射?
修改 -
值得一提的是,数据访问将是只读
答案 0 :(得分:3)
正如上面的评论所指出的,确实Component
解决了这个问题。
在我的ResultMap
课程中遵循以下内容:
Component(x => x.Event, m =>
{
m.Map(x => x.ID).Column("EventID");
m.Map(x => x.Name).Column("EventName");
m.Map(x => x.Description).Column("EventDescription");
});