我有一个在 Fluent nhibernate 中映射的类,但我希望映射忽略其中一个类属性。
使用下面的类和映射我收到此错误:
以下类型不得用作代理:
iMasterengine.Data.Model.Calendar:方法 get_HasEvents 应该是虚拟的
//my class
public class Calendar : IEntity {
public virtual int Id { get; private set; }
public virtual string Name { get; set; }
public virtual string SiteId { get; set; }
public virtual IList<CalendarEvent> Events { get; set; }
//ignore this property
public bool HasEvents { get { return Events.Count > 0; } }
}
//my mapping
public class CalendarMap : ClassMap<Calendar> {
public CalendarMap() {
Id(x => x.Id);
Map(x => x.Name);
Map(x => x.SiteId);
HasMany(x => x.Events).Inverse();
//what do I put here to tell nhibernate
//to ignore my HasEvents property?
}
}
你可以做HasEvents
virtual在课堂里:
public virtual bool HasEvents { get { return Events.Count > 0; } }
您不需要向映射添加任何内容。
如果您使用自动映射,您只需要告诉 Fluent 忽略某个属性,我认为您不需要。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)