2015-08-26 4 views
0

Мы разрабатываем новый WEBAPI, для которого требуется dll. Установка пакета: «Microsoft.AspNet.WebApi» версия 6.0 для справки по сборке. Как часть этого Newtonsoft.Json.dll ссылается на проект. Наше приложение уже имеет версию «Microsoft.AspNet.WebApi» версии 4.5.
Я даже пытался использовать старую dll, но не совместим с перезагрузкой двоичных файлов в проекте WebAPI. Если я переопределяю более старую версию с более новой версией, что может быть возможным. Я использовал старую версию в классах оболочки Exception Handling.Разработка WEPAPI, требующая Newtonsoft.Json.dll

ответ

0

Я потерял хорошую группу клеток мозга, борющихся с подобной проблемой для проекта WebAPI на основе Owin. «Решение» Я использую перенаправление зависимостей в файле app.config. Вот файл из моего решения, вы можете исправить его в соответствии с вашими потребностями.

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 
    </startup> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration>