【问题标题】:How do I make an IgnoreProperty convention in fluent nhibernate?如何在流利的 nhibernate 中制作 IgnoreProperty 约定?
【发布时间】:2010-09-10 22:15:51
【问题描述】:
public class MyObjectMap : IAutoMappingOverride<MyObject>
{
    public void Override(AutoMapping<MyObject> mapping)
    {
        mapping.IgnoreProperty(x => x.InterfaceProperty);
    }
}

我目前在每张地图上都这样做......我怎样才能把它变成一个约定?我正在添加这样的约定:

    private Action<IConventionFinder> GetConventions()
    {
        return c =>
        {
            c.Add<ForeignKeyConvention>();
            c.Add<HasManyConvention>();
            c.Add<HasManyToManyConvention>();
            c.Add<ManyToManyTableNameConvention>();
            c.Add<PrimaryKeyConvention>();
            c.Add<ReferenceConvention>();
            c.Add<TableNameConvention>();
        };
    }

【问题讨论】:

    标签: fluent-nhibernate conventions


    【解决方案1】:

    我认为这与约定无关,但是它受制于映射覆盖,试试这个:

    public class AutoMapDefaultConfig : DefaultAutomappingConfiguration
    {
        public override bool ShouldMap(FluentNHibernate.Member member)
        {
            if (member.Name == "InterfaceProperty")
                return false;
            return base.ShouldMap(member);
    
        }
    }
    

    我实际上没有尝试过,但我认为它可能会有所帮助,并注意 DefaultAutomappingConfiguration 在 Fluent-NHibernate V1.1 中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-02
      • 1970-01-01
      • 2010-11-17
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      相关资源
      最近更新 更多