20190904_ 警告 發現同一依賴程序集的不同版本間存在沖突。


錯誤原因:

嚴重性 代碼 說明 項目 文件 行 禁止顯示狀態
警告 發現同一依賴程序集的不同版本間存在沖突。請將項目文件中的“AutoGenerateBindingRedirects”屬性設置為 true。有關詳細信息,請參閱 http://go.microsoft.com/fwlink/?LinkId=294190。 ControlItech6433

其實微軟的報錯消息已經非常清楚了:

項目文件中的“AutoGenerateBindingRedirects”屬性設置為 true

打開你的項目 *.csproj 這個文件, 在  <PropertyGroup>節點下添加 <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>;

保存即可;

下面看看微軟的官方解釋:

禁用桌面應用程序中的自動綁定重定向

對於面向.NET Framework 4.5.1及更高版本的Windows桌面應用程序,默認情況下會啟用自動綁定重定向。編譯應用程序時,綁定重定向將添加到輸出配置(app.config)文件中,並覆蓋可能發生的程序集統一。app.config文件未被修改。您可以通過修改應用程序的項目文件或在Visual Studio中取消選中項目屬性中的復選框來禁用此功能。

通過項目屬性禁用

如果您使用的是Visual Studio 2017 15.7或更高版本,則可以在項目的屬性頁中輕松禁用自動生成的綁定重定向。

  1. Solution Explorer中右鍵單擊該項目,然后選擇Properties

  2. 在“ 應用程序”頁面上,取消選中“ 自動生成綁定重定向”選項。

  3. Ctrl + S保存更改。

在項目文件中手動禁用

使用以下方法之一打開項目文件以進行編輯:

  • 在Visual Studio中,在解決方案資源管理器中選擇項目,然后從快捷菜單中選擇“ 文件資源管理器”中的“打開文件夾 在文件資源管理器中,找到項目(.csproj或.vbproj)文件並在記事本中打開它。
  • 在Visual Studio的“ 解決方案資源管理器”中,右鍵單擊該項目,然后選擇“ 卸載項目”再次右鍵單擊卸載的項目,然后選擇“ 編輯[projectname.csproj]”

在項目文件中,找到以下屬性條目:

<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>

更改truefalse

<AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>

手動啟用自動綁定重定向

 

您可以在針對舊版.NET Framework的現有應用程序中啟用自動綁定重定向,或者在未自動提示您添加重定向的情況下啟用自動綁定重定向。如果您的目標是更新版本的框架,但沒有自動提示添加重定向,您可能會獲得建議輸出,建議您重新映射程序集。

  1. 使用以下方法之一打開項目文件以進行編輯:

    • 在Visual Studio中,在解決方案資源管理器中選擇項目,然后從快捷菜單中選擇“ 文件資源管理器”中的“打開文件夾 在文件資源管理器中,找到項目(.csproj或.vbproj)文件並在記事本中打開它。
    • 在Visual Studio的“ 解決方案資源管理器”中,右鍵單擊該項目,然后選擇“ 卸載項目”再次右鍵單擊卸載的項目,然后選擇“ 編輯[projectname.csproj]”

   2. 將以下元素添加到第一個配置屬性組(在<PropertyGroup>標記下):

<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>

  下面顯示了插入元素的示例項目文件:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProjectGuid>{123334}</ProjectGuid>
    ...
    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
  </PropertyGroup>
  ...
</Project>

  3. 編譯您的應用程序。

在Web應用程序中啟用自動綁定重定向

對於Web應用程序,自動綁定重定向的實現方式不同。由於必須為Web應用程序修改源配置(web.config)文件,因此綁定重定向不會自動添加到配置文件中。但是,Visual Studio會通知您綁定沖突,您可以添加綁定重定向來解決沖突。由於始終會提示您添加綁定重定向,因此您無需為Web應用程序顯式禁用此功能。

要將綁定重定向添加到web.config文件:

1. 在Visual Studio中,編譯應用程序,並檢查構建警告。

 

 2. 如果存在程序集綁定沖突,則會顯示警告。雙擊警告,或選擇警告並按Enter鍵。

將出現一個對話框,使您可以自動將必要的綁定重定向添加到源web.config文件中。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM