свободная проблема с автоматическим отображением nhibernate - PullRequest
0 голосов
/ 17 марта 2011

У меня есть исключение «System.InvalidOperationException: попытка добавить коллекцию« Media », когда она уже была добавлена» при создании конфигурации с помощью свободно используемого nhibernate. У меня это есть только когда какое-то отображение извлекается в общий метод. Вот что у меня есть:

public class PartyMap : IAutoMappingOverride<Party>
{
    public void Override(AutoMapping<Party> mapping)
    {
        mapping.MapMedia(); // doesn't work
        // mapping.MapMedia<Party>(); doesn't work neither

        // this works, but I want to extract this!
        // mapping.HasManyToMany(x => x.Media).Table("MediaLinks").Cascade.All(); 
    }
}

// this doesn't work
public static void MapMedia<T>(this AutoMapping<T> mapping)
    where T : IEntityInMedia
{
    mapping.HasManyToMany(x => x.Media).Table("MediaLinks").Cascade.All();
}

// this works, but I want this method to be generic!
public static void MapMedia(this AutoMapping<Party> mapping)
{
    mapping.HasManyToMany(x => x.Media).Table("MediaLinks").Cascade.All();
}

Я не могу просмотреть сгенерированное сопоставление, поскольку получаю эту ошибку до того, как сопоставление может быть экспортировано.

Я только что нашел несколько похожих постов это и это , но там нет никакого решения.

...