由于名称相同,无法添加引用

Ale*_*idt 16 c# visual-studio .net-4.5 visual-studio-2013

自从VS 2013更新以来,我的行为是我无法添加对具有相同名称的2个项目的引用.我做了以下事情:

  1. 添加了3个解决方案文件夹A,B和C.
  2. 在A和B文件夹中添加了类库"Core"的项目.
  3. 向文件夹C添加了ConsoleApplication类型的项目.

结果结构如下所示:

Solution
 + A
   + Core
 + B
   + Core
 + C
   + ConsoleApp
Run Code Online (Sandbox Code Playgroud)

在A的项目属性中输入以下内容:

  • 大会名称:A.Core
  • 默认命名空间:A.Core

在B:

  • 大会名称:B.Core
  • 默认命名空间:B.Core

在C.ConsoleApp中添加了对A.Core的引用后,我尝试将B.Core引用到控制台,我得到错误:

无法添加对"核心(B.Core)"的引用.项目中已存在对"Core"组件的引用.

该解决方案是使用VS 2012创建的,并在升级后显示此行为.我需要在控制台内设置什么?

编辑:我在Youtube上发布了一个截屏视频来解释这个问题并在Microsoft支持中添加了一个错误.我仍然认为,这是一个错误.

Jim*_*mmy 23

问题是引用名称采用项目名称.它仍然通过适当的名称引用DLL(A.Core.dll或B.Core.dll),但引用使用VS中的项目名称:

在此输入图像描述

如果在添加对A.Core的引用后查看项目文件,您将看到:

<ProjectReference Include="..\ClassLibrary1\Core.csproj">
  <Project>{16c42795-f703-4673-98e4-98758c09f9e0}</Project>
  <Name>Core</Name>
</ProjectReference>
Run Code Online (Sandbox Code Playgroud)

将名称值更改为A.Core,您将被解除阻止.(B.Core在您编辑之前仍然会显示为"Core".)