我应该担心版本冲突吗?

B. *_*non 5 c# app-config devart dotconnect

我最近从版本6更新了我的devArt dotConnect for Oracle组件.到7.2

一切似乎都很好.

但是,在编译时我发现我已经收到警告:" 发现同一个依赖程序集的不同版本之间存在冲突. "

我不知道这是否与dotConnect组件有关(它没有说),但我认为这是一个非常好的猜测.

当我点击警告时,我会看到对话框:

MS Visual Studio - 一个或多个依赖程序集具有版本冲突.

是否要通过在app.config文件中添加绑定重定向记录来修复这些冲突?

他们(MS)或它(VS)有多好,但是......它会做什么?它并没有真正告诉我.我应该走还是留?

UPDATE

我引用了两个DevArt dotConnect for Oracle组件:

Devart.Data -and Devart.Data.Oracle

Devart.Data:运行时版本v2.0.50727,版本5.0.555.0

Devart.Data.Oracle:运行时版本v2.0.50727,版本7.2.96.0

所以有一个版本,但不是运行时版本,不匹配.我不知道这是不是问题.如果警告信息更明确,那就太好了.据推测,"它"确切地知道问题是什么 - 为什么它不会泄露那些至关重要的信息呢?

更新2

我有另一个使用完全相同的两个引用的项目.安装更新的组件后甚至无法编译.为什么两个项目之间的区别呢?因此即使.DLL是相同的(相同的名称,磁盘上的相同位置),我删除它们然后将它们添加回第二个项目,它运行良好 - 没有错误,没有警告.但是,我回到第一个项目,仍然得到相同的警告,我删除并添加了这两个引用/ DLL - 我仍然得到相同的警告.所以我仍然不知道该做什么/我是否应该把VS提出重新定向(我想起了"老学校"电话运营商重新连接电线的每一个方向,做一些值得青少年的旋转afister aficianados ).

Jur*_*uri 3

绑定记录会将绑定部分添加到您的 web.config(或 app.config)文件中,将给定版本的 dll 指向另一个版本。但是,如果它们彼此不兼容,这可能会很危险。他们看着像是

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
      <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>
Run Code Online (Sandbox Code Playgroud)

不过,我会先检查不同项目链接 Devart dll 的位置,并确保它们都引用相同的内容。在极端情况下,将您想要使用的 Devart dll 复制到解决方案的文件夹中,并使所有项目都指向该文件夹