Visual Studio将编译警告转换为生成错误



在C#中,我注意到使用字符串。带有数字索引的格式可能很危险。我经常用它来记录日志。不正确的映射将导致异常:

索引(从零开始)必须大于或等于零并且小于参数列表的大小。

示例:

Console.Log(string.Format("test string: var1: {0}, var2:{1}, var3:{2}", var1, var2); // using two arguments but three mappings in log string. 

我觉得像这样可能会遇到异常的东西应该是编译器错误而不是警告。我知道.Net框架无法做到这一点,因为它接收params[]中的参数。

老实说,但我确实忽略了解决方案中的编译器警告。不是因为我觉得它们不重要,而是因为存储库中其他人提交的代码生成了太多警告。

问题:1.在Visual Studio中是否有一种好的方法来获取某些警告的编译错误。2.对于这样的事情,我有没有更好的编码实践可以避免这样的错误。

问题1的答案

您必须启用"将警告视为错误"

  1. 右键单击您的项目,选择"属性"
  2. 单击"构建"
  3. 将"将警告视为错误"从"全部"切换为"特定警告"或"无"

来源:这个SO问题,来自谷歌搜索,我自己测试了

问题2的答案:我认为这是高度主观的,所以它更多的是基于意见。也许你不需要手动将它们键入var1、var2、var3,而是可以将它们作为一个组,使用for循环等

还有单元测试。这是最重要的事情之一,即使每个人都讨厌它们。看看这本书:代码完整的史蒂夫·麦康奈尔作为推荐资源。它也被用于许多大学的程序设计与开发课程中。

最新更新