2015-04-19 2 views
0

У меня есть 2 проекта в моем решении.Autofac.Extras.DynamicProxy2 с Autofac 3.5.2

Autofac 3.5.2 Один использует и другой используется Autofac.Extras.DynamicProxy2 for interception (Autofac 3.3.1). Один с Autofac 3.3.1 имеет ссылку на проект на один с Autofac 3.5.2. Попытка запустить разные версии dll в моем решении не удалась, а обновление 3.3.1 to 3.5.2 пропускает логику перехватчика.

Я хотел бы запустить перехват на Autofac 3.5.2, так как я использую 3.5.2 для многих других проектов, которые я разрабатываю.

Неужели кто-то столкнулся с этой проблемой с успехом?

Спасибо

Ошибка я получаю: Ошибка 5 Ассамблея 'Version = 1.0.0.0, культура = нейтральной, PublicKeyToken = нуль' использует «Autofac, Version = 3.5.0.0, культура = нейтральной, PublicKeyToken = 17863af14b0044da», который имеет более высокую версию, чем ссылка сборки 'Autofac, Version = 3.3.0.0, культура = нейтральной, PublicKeyToken = 17863af14b0044da'

+0

Что го e ошибка у вас есть? Любое сообщение об ошибке? –

+0

@CyrilDurand Я добавил к вопросу. –

ответ

0

Вы должны использовать assemblyBinding:

<configuration> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" 
          culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration>