【发布时间】:2021-04-16 06:52:49
【问题描述】:
我有 API 项目 (.NET Framework 4.6),其中包含许多不同的控制器、nuget 包、swagger、EF 等。 如果我加载这个项目并进行构建 - 一切都成功(没有发现问题),我可以将我的项目部署到 DevOps。但是,如果我添加至少一行代码并进行构建,我会得到超过 6000 个错误。 我已经尝试清理和重建我的项目,但这没有帮助。
这 6000 个例外中的一些:
- 考虑将“WebsiteApi”中定义的类型与另一个命名空间合并。
- 因为 'string.Format(string, object, object, object)' 的行为可能因当前用户的区域设置而异,请将 'CampusController.GetExternal()' 中的此调用替换为对 'string.Format 的调用(IFormatProvider,字符串,参数对象 [])'。如果将向用户显示“string.Format(IFormatProvider, string, params object[])”的结果,请将“CultureInfo.CurrentCulture”指定为“IFormatProvider”参数。否则,如果结果将由软件存储和访问,例如当它被持久化到磁盘或数据库时,请指定“CultureInfo.InvariantCulture”。
- 在成员“Controller.GetItems(DateTime, bool)”中,将参数名称“B2B”中“B”的大小写更改为“b”。
- 修改“CompanyController.GetCompany(Guid)”以捕获比“Exception”更具体的异常或重新抛出异常。
我的解决方法是:添加代码 -> 构建 -> 构建不会成功 -> 保存项目 -> 关闭 VS -> 再次打开项目 -> 构建 = 构建成功。
【问题讨论】:
-
这通常是由
obj和bin文件夹中的过期二进制文件引起的。尝试关闭 Visual Studio,删除它们并重新启动 VS。 ReSharper 也喜欢这样做,如果您使用它,请清除其缓存并重试。 -
您列出的所有内容都是分析器警告:它们听起来像是来自 FxCop。这些不应该导致构建失败。鉴于您可以在一段时间后构建它,我认为噪音中隐藏着一个单独的构建错误。我们需要看看它是什么:在“输出”窗口中搜索它可能是最简单的
-
将错误列表过滤为仅错误而不是警告
-
@Charlieface 如果启用了“将警告视为错误”,这将无济于事。
-
@RandyMarsh 您可能已经将警告配置为错误——我建议您暂时禁用它,以便您查看实际构建失败错误是什么。在构建后也发布输出窗口的内容
标签: c# asp.net visual-studio visual-studio-project