bindingRedirect
От: cadet354 Россия
Дата: 25.09.06 07:39
Оценка:
Доброго времени,
есть веб приложение(думаю это не принципиально в этом случае),
разбито на модули (dll),
так получилось, что одна dll использует для логирования версию log4net (1.2.0.30714),
а другая 1.2.10.0.
в web-config добавил следующие строки:
<runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="log4net"
                           publicKeyToken="b32731d11ce58905"
                           culture="neutral" />
         <bindingRedirect oldVersion="1.2.0.30714"
                          newVersion="1.2.10.0"/>
       </dependentAssembly>
      </assemblyBinding>
   </runtime>

но ошибка осталась:
=== Pre-bind state information ===
LOG: DisplayName = log4net, Version=1.2.0.30714, Culture=neutral, PublicKeyToken=b32731d11ce58905
 (Fully-specified)
LOG: Appbase = file:///C:/Inetpub/wwwroot/Tender
LOG: Initial PrivatePath = bin
Calling assembly : DotNetNuke, Version=3.0.13.33292, Culture=neutral, PublicKeyToken=null.
===

LOG: Redirect found in application configuration file: 1.2.0.30714 redirected to 1.2.10.0.
LOG: Publisher policy file is not found.
LOG: No redirect found in host configuration file (c:\winnt\microsoft.net\framework\v1.1.4322\aspnet.config).
LOG: Using machine configuration file from C:\WINNT\Microsoft.NET\Framework\v1.1.4322\config\machine.config.
LOG: Post-policy reference: log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=b32731d11ce58905
LOG: Attempting download of new URL file:///c:/winnt/microsoft.net/framework/v1.1.4322/Temporary ASP.NET Files/tender/62ec02ca/3d6f5827/log4net.DLL.
LOG: Attempting download of new URL file:///c:/winnt/microsoft.net/framework/v1.1.4322/Temporary ASP.NET Files/tender/62ec02ca/3d6f5827/log4net/log4net.DLL.
LOG: Attempting download of new URL file:///C:/Inetpub/wwwroot/Tender/bin/log4net.DLL.
WRN: Comparing the assembly name resulted in the mismatch: PUBLIC KEY TOKEN

видимо из-за того, что публичный ключ в старой версии не совпадает с новой версией (в старой версии b32731d11ce58905, а в новой 1b44e1d426115821).
пробывал не указывать в assemblyIdentity publicKeyToken, но тогда редирект вообще не происходит:
LOG: Publisher policy file is not found.
LOG: No redirect found in host configuration file (c:\winnt\microsoft.net\framework\v1.1.4322\aspnet.config).
LOG: Using machine configuration file from C:\WINNT\Microsoft.NET\Framework\v1.1.4322\config\machine.config.
LOG: Post-policy reference: log4net, Version=1.2.0.30714, Culture=neutral, PublicKeyToken=b32731d11ce58905
LOG: Attempting download of new URL file:///c:/winnt/microsoft.net/framework/v1.1.4322/Temporary ASP.NET Files/tender/62ec02ca/3d6f5827/log4net.DLL.
LOG: Attempting download of new URL file:///c:/winnt/microsoft.net/framework/v1.1.4322/Temporary ASP.NET Files/tender/62ec02ca/3d6f5827/log4net/log4net.DLL.
LOG: Attempting download of new URL file:///C:/Inetpub/wwwroot/Tender/bin/log4net.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Revision Number

Как это победить?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.