Игнорировать сопоставление свойств по доступности в Fluent NHibernate AutoMapper - PullRequest
2 голосов
/ 19 августа 2010

У меня есть следующий класс, который я сопоставляю, используя AutoMapper Fluent NHibernate.Я не хочу, чтобы элементы списка были общедоступными для изменения, поэтому есть общедоступная IEnumerable, поддерживаемая IList, которая может быть заполнена внутренне или NHibernate.

Я хочу, чтобы NHibernate сопоставил teamMembers со столбцом с именем TeamMembers.Я также хочу, чтобы FNH игнорировал свойство TeamMembers этого класса.

public class Team : Entity
{
    protected internal virtual IList<Person> teamMembers { get; set; }
    public IEnumerable<Person> TeamMembers { get { return teamMembers;} }
}

1 Ответ

5 голосов
/ 19 августа 2010

Вот как вы говорите модели самообслуживания NHibernate игнорировать вашу собственность:

var cfg = Fluently.Configure()
            .Database(configurer)
            .Mappings(m =>
                        {
                            m.AutoMappings.Add(AutoMap.Assemblies(Assembly.GetExecutingAssembly())
                                .Override<Team>(map => map.IgnoreProperty(team => team.TeamMembers)));
                        });

Тогда у вас будет именно то, что вы хотите.

...