域名:
public class BaseClassClient { public virtual ICollectionBaseObjects{ get; set; } } public abstract class BaseClass { } public class SubClass1 : BaseClass { } public class SubClass2 : BaseClass { }
Association references unmapped class
即使两个子类都已映射,我也会收到错误.显然,基类本身没有映射.请建议如何解决这个问题.
编辑
在关闭一个问题作为另一个问题之前,我宁愿这样做,他们只是不读,但也关心理解这两个问题.
我已经看到了错误:流畅的NHibernate映射,它引用了不同程序集中的映射.但它谈到了一个不同的场景.
我的情况如下.
public class Product { public int Id { get; set; } public ICollectionPricingRules{ get; set; } } public abstract class BasePricingRule { public int Id { get; set; } //other properties } //Several concrete classes inherit from BasePricingRule.
我希望每个具体类都有一个表,并且没有基类的表.因此,没有映射BasePricingRule
.我允许类自动映射,偶尔提供必要的覆盖.我为产品类创建了一个自动覆盖,如下所示.
public void Override(FluentNHibernate.Automapping.AutoMappingmapping) { mapping.HasMany(product => product.PricingRules); //Not really sure // about how to map this. }
我已经看到像http://ayende.com/blog/3941/nhibernate-mapping-inheritance这样的示例用于继承映射.但这些例子实际上并没有解决我所面临的问题.不仅仅是错误,我想知道我应该如何通过流畅的NHibernate映射这个域,最好是使用自动覆盖.