为什么没有应用BindingRedirect

时间:2014-01-04 08:52:03

标签: c# .net

我有一个绑定重定向,可以在一台机器上运行,但不能在另一台机器上运行。

我使用fuslogvw来查看此日志,这就是它所说的:

LOG: Attempting download of new URL file:///C:/Dev/PropertySearch/PropertySearch/PropertySearch.Tests/bin/x86/Debug/Oracle.ManagedDataAccess.DLL.
LOG: Assembly download was successful. Attempting setup of file: C:\Dev\PropertySearch\PropertySearch\PropertySearch.Tests\bin\x86\Debug\Oracle.ManagedDataAccess.dll
LOG: Entering run-from-source setup phase.
LOG: Assembly Name is: Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342
WRN: Comparing the assembly name resulted in the mismatch: Minor Version

这是绑定重定向的样子:

 <dependentAssembly>
    <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.121.1.0" newVersion="4.121.1.0" />

据我所知,一切都正确匹配。

这是在运行时生成的错误:

"Could not load file or assembly 'Oracle.ManagedDataAccess, Version=4.112.3.60, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)":"Oracle.ManagedDataAccess, Version=4.112.3.60, Culture=neutral, PublicKeyToken=89b483f429c47342"}

有谁能看到发生了什么?

格雷格

1 个答案:

答案 0 :(得分:1)

如果它在一台机器上工作而在另一台机器中不工作,唯一的原因是新组件未安装在故障计算机的GAC中。