.NET dll версия проблемы при замене одной dll - PullRequest
4 голосов
/ 06 сентября 2011

У меня следующая проблема. Я создал программное обеспечение, содержащее несколько проектов в одном решении. Когда я исправляю ошибку в одном из моих проектов, которая не меняет поведение функций (например, простое изменение строки или дополнительный блок try / catch внутри функции), я должен перекомпилировать и снова предоставить все мои DLL, потому что когда Я только предоставил измененную DLL, версия не совпадает. Я понимаю, что проблема связана с тем, что мои DLL строго названы. Но есть ли способ добиться того, чтобы я мог просто заменить измененную dll, пока номер версии повышен, без изменения и распространения других dll?

1 Ответ

1 голос
/ 16 октября 2013

Вы можете иметь как dll, так и использовать bindingRedirect , как показано ниже:

dll-версия в dotnet

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <dependentAssembly>
            <assemblyIdentity name="AssemblyName"
                              publicKeyToken="32ab4ba45e0a69a1"
                              culture="neutral" />
            <bindingRedirect oldVersion="1.0.0.0"
                             newVersion="2.0.0.0"/>
         </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>
...