更新 1:我已将我的项目文件夹上传到保管箱 - dropbox.com/s/8dfw3uprrynrhzx/S3Util.zip
我是 Visual Studio 的新手,我在适用于 Windows 8 的 Visual Studio 2012 Express 上用 C# 创建了一个小型 Windows 运行时组件。
我的组件由一个密封类和一个静态方法组成。我在解决方案中添加了一个单元测试库项目来测试这个静态方法。
(我跟着this walkthrough创建了一个单元测试)
当我构建解决方案时,出现以下错误:
Error 1 The type 'S3Util.S3Security' exists in both 'c:\workspace\vs\S3Util\S3Util\bin\Debug\S3Util.winmd' and 'c:\workspace\vs\S3Util\S3Util\bin\Debug\S3Util.winmd'
C:\workspace\vs\TestLib_S3Util\TestLib_S3Util\Test_Security.cs 18 27 TestLib_S3Util
error help page on Microsoft website表明这是一个编译器错误 CS0433。
但是,我的单元测试库只包含一个对我的 Windows 运行时组件项目的引用,甚至我看到的错误消息也两次引用同一个 .winmd 文件。请帮助我了解问题以及解决方法。
错误截图:(点击查看大图)
最佳答案
如果我不知道错误发生的原因,我会开始缩小可能性的范围。我会执行以下操作:
- 通过搜索查找类 S3Security。如果找到其中 2 个 - 删除一个。
- 尝试删除最近添加的引用之一并编译。删除直到项目编译。
- 尝试删除最新的文件/项目,直到解决方案编译无误。您也可以尝试反向移动,开始做您正在做的步骤,然后检查您会在哪一步出现错误。让我们知道它是什么。
关于C# 编译器错误 CS0433,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13335519/