Dlaczego „bindRedirect” został dodany do pliku app.config po dodaniu pakietu Microsoft.Bcl.Async?
Zastanawiałem się, dlaczego nuget dodał następujący kod do moich aplikacjiapp.config
plik po zainstalowaniuMicrosoft.Bcl.Async
:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.5.19.0" newVersion="2.5.19.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.5.19.0" newVersion="2.5.19.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
Jeśli usunę ten element XML z konfiguracji, aplikacja nie będzie działać poprawnie.
O ile mi wiadomo, możemy użyćbindingRedirect
aby aplikacja załadowała nowszą lub starszą wersję złożenia w przypadku, gdy nie ma wersji, której używaliśmy podczas kompilowania EXE.
Używam jednak dokładnie tej wersji2.5.19.0
, dlaczego miałbym wtedy potrzebować przekierowania?
Czemu czy potrzebuję tegobindingRedirect
?