gpt4 book ai didi

c# - 已导入具有相同标识 'XXX' 的程序集。尝试删除重复引用之一

转载 作者:太空宇宙 更新时间:2023-11-03 12:09:19 26 4
gpt4 key购买 nike

我有一个 MVC 网络应用程序,我使用 msbuild 命令行将其发布到我们的 UAT 服务器。它托管在 Windows 2016 服务器 IIS 10 上。

有时,不总是,当我尝试启动网站时出现以下错误:

Server Error in '/' Application. Compilation Error Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: CS1703: An assembly with the same identity 'System.Xml.ReaderWriter, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' has already been imported. Try removing one of the duplicate references.

Source Error: [No relevant source lines] Source File: Line: 0 Show Detailed Compiler Output: C:\WINDOWS\SysWOW64\inetsrv> "C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe" /t:library /utf8output /R: "C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Text.Encoding.Extensions\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Text.Encoding.Extensions.dll" /R:

...

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\4a1a5bcc\84ed54d3\assembly\dl3\ab6a43c3\00602620_2137d201\System.Xml.ReaderWriter.dll" /R:

...

"C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Xml.ReaderWriter\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Xml.ReaderWriter.dll" /R:

...

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\4a1a5bcc\84ed54d3\App_Web_home.cshtml.65a2d1ee.ef3qnjdl.1.cs" Microsoft (R) Visual C# Compiler version 4.6.1586.0

for C# 5 Copyright (C) Microsoft Corporation. All rights reserved.

This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C# 5, which is no longer the latest version. For compilers that support newer versions of the C# programming language, see http://go.microsoft.com/fwlink/?LinkID=533240

c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\4a1a5bcc\84ed54d3\assembly\dl3\ab6a43c3\00602620_2137d201\System.Xml.ReaderWriter.DLL: error CS1703: An assembly with the same identity 'System.Xml.ReaderWriter, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' has already been imported. Try removing one of the duplicate references. c:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Xml.ReaderWriter\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Xml.ReaderWriter.dll: (Location of symbol related to previous error)

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.7.3163.0

我试图寻找引用,但我只能在 web.config 中看到一次。

此外,在我运行 iisreset 或重新启动 Web 服务器后,错误通常会消失。我担心如果我们发布它,这也可能发生在实时服务器上。

如果能为我指出正确的方向来解决此问题,我将不胜感激。

更新:

我检查了整个项目中的所有引用。我能找到的就是。

Web.config:

<compilation defaultLanguage="c#" debug="true" batch="false" targetFramework="4.5" numRecompilesBeforeAppRestart="50">
<assemblies>
<remove assembly="System.Xml.ReaderWriter" />
<add assembly="System.Xml.ReaderWriter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

Packages.config:

<package id="System.Xml.ReaderWriter" version="4.3.0" targetFramework="net461" />

更新 2:

我已按照 Péter Csajtai 的建议从 web.config 中删除了“添加程序集”。从那以后它工作正常(可能它没有在任何地方使用)。

我曾尝试删除其他程序集,但那些已被使用,所以我需要多个 redirects .另一方面它正在工作,所以我有点不愿意“修复它”。我添加了一个重定向以查看它是否有效,但如果没有错误,则很难判断它是否在做正确的事情。

还发现this这可能对其他人将来进行故障排除很有用。

最佳答案

如输出所述,您的项目从两个不同的地方引用 System.Xml.ReaderWriter.dll:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\4a1a5bcc\84ed54d3\assembly\dl3\ab6a43c3\00602620_2137d201\

来自 GAC:

C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Xml.ReaderWriter\v4.0_4.0.0.0__b03f5f7f11d50a3a\

您应该检查对该 dll 的所有引用,并统一它们不同的引用路径。

关于c# - 已导入具有相同标识 'XXX' 的程序集。尝试删除重复引用之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53211315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com