2021年10月

现象

项目引用了,using也写了,也没写错,都是直接复制粘贴的,偏偏报错说“命名空间xxx中不存在类型或命名空间名xxx”,百思不得其解.......

原因

本来打算放弃了,后面找到原因了:因为整个解决方案总有多个项目,有两个名称类似的项目,仔细看了名称没问题,问题在两个项目的程序集名称是一样的,所以使用using时会导致“命名空间xxx中不存在类型或命名空间名xxx”的错误出现。

解决

  • 查看“程序集名称”是否正确
  • 通常“程序集名称”和“默认命名空间”是一致的

步骤(二选一)

  • 可通过右键项目,选择“属性”进行修改
  • 可通过右键项目,选择“编辑项目文件”,在PropertyGroup节点中,修改AssemblyName的值为RootNamespace的值一致即可

后续处理步骤(必选)

  1. 清理解决方案
  2. 先单独生成修改后的那个项目
  3. 在主项目中删除对该项目的引用
  4. 在主项目中添加对该项目的引用

至此问题就解决了。