Иногда, когда вы добавляете новую библиотеку, появляется конфликтующая версия System.Windows.Interactivity.dll.
Например, для пакета NuGet MVVM lightможет потребоваться v4.2 of System.Windows.Interactivity.dll, но для пакета NuGet Rx-XAMLможет потребоваться v4.5 of System.Windows.Interactivity.dll. Это предотвратит работу проекта, потому что какую бы версию System.Windows.Interactivity.dllвы ни включили, одна из библиотек откажется компилироваться.
Чтобы исправить это, добавьте перенаправление привязки сборки, отредактировав свой, app.configчтобы он выглядел примерно так:
<?xml version="1.0"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Windows.Interactivity"
publicKeyToken="31bf3856ad364e35"
culture="neutral"/>
<bindingRedirect oldVersion="4.0.0.0"
newVersion="4.5.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup>
<appSettings>
<add key="TestKey" value="true"/>
</appSettings>
Не беспокойтесь об изменении PublicKeyToken, это константа для всех версий, поскольку это зависит от имени .dll, а не от версии.
Убедитесь , что вы подходите newVersionв вашем appConfigфактическую версию , что вы в конечном итоге направлены на:
