【问题标题】:'AppContext' is an ambiguous reference between 'System.AppContext' and '<usernamespace>.AppContext''AppContext' 是 'System.AppContext' 和 '<usernamespace>.AppContext' 之间的模糊引用
【发布时间】:2024-01-14 17:46:01
【问题描述】:
  • 我有 Visual Studio 2013,我的代码运行良好。
  • 安装了 Visual Studio 2015 社区版,代码停止工作。
  • 已卸载 Visual Studio 2015,但代码仍然不起作用。

我读到,在安装 Visual Studio 2015 时,文件夹位置 C:\Windows\Microsoft.NET\Framework64\v4.0.30319 的内容已更改。即“.net 4.6 的就地升级”

  • 通过 ilspy 查看 mscorlib.dll,System.AppContext 类在我朋友的系统上不存在,他还没有升级到 .net4.6
  • 我的系统 mscorlib.dll 类 System.AppContext 存在

我需要回到以前版本的mscorlib.dll,怎么办? 系统不允许文件替换。

我应该提一下,代码可以编译。但在运行时抛出此错误。

【问题讨论】:

标签: .net-4.5 .net-framework-version .net-4.6


【解决方案1】:

这是因为与 Microsoft 添加到名为 AppContext 的系统命名空间的类的名称冲突。事实证明,这是开发人员常用的名称,这导致应用程序在升级时到处崩溃。我忘记了哪个版本有这个类,但我认为它是从 4.​​5.2 开始的。

您想要做的是将您的 .NET 版本降级到引入 System.AppContext 类之前的任何版本(大概是 4.5.1)。

【讨论】:

最近更新 更多