Как настроить контейнер Unity для устранения неоднозначности построения EntityContext: - PullRequest
0 голосов
/ 10 июня 2011
ForEach(repository =>
{
    var objectContextServiceType = typeof(BaseObjectContext<>)
        .MakeGenericType(repository.ObjectContextType);

        container.RegisterType(objectContextServiceType, 
        new PerExecutionContextLifetimeManager());

    var repositoryServiceType = typeof(IRepository<>)
        .MakeGenericType(repository.DomainType);

    var repositoryImplementation = typeof(EntityRepository<,>)
        .MakeGenericType(repository.DomainType,
            repository.ObjectContextType);

    container.RegisterType(repositoryServiceType,
        repositoryImplementation, 
        new TransientLifetimeManager());
})

Когда Unity пытается разрешить EntityContext, я получаю сообщение об ошибке: Невозможно устранить неоднозначность при создании контекста сущности

...