code-analysis相关内容

.ToString()和.ToString(CultureInfo.CurrentCulture)

例如,我必须在每个数字中使用 .ToString(CultureInfo.CurrentCulture)进行字符串转换.我是否可以以某种方式覆盖 .ToString(),以便在字符串转换中不再收到像区域性这样的消息? 例如,现在我必须更改每一个 myNumValue.Count.ToString(); 到 myNumValue.Count.ToString(CultureInfo ..
发布时间:2021-04-22 20:39:57 C#/.NET

在Roslyn(Microsoft CodeAnalysis)中,如何创建布尔文字?

通常我会使用SyntaxFactory,但无法弄清楚如何用它创建一个真或假节点. 解决方案 我刚刚弄清楚了.true和false是关键字,我不必过多地处理关键字,因此我在寻找错误的地方.关键字显然倾向于依靠拥有自己的SyntaxKind. SyntaxFactory.LiteralExpression(SyntaxKind.TrueLiteralExpression); 搜索了最后 ..
发布时间:2021-04-22 20:39:54 C#/.NET

任何避免警告C6386的方法,而无需完全禁用它或代码分析

默认情况下,Visual Studio 2019开始将代码分析警告显示为编辑器内的绿色花键.这些对于学习C编程的学生可能非常有用,因为它们会捕获经典错误,例如被一个数组访问关闭. 不幸的是,误报可能会完全破坏学习体验,并且我担心我将不得不要求学生禁用该功能,以避免让他们担心不存在的问题. 此简短代码段不会引起任何警告: #includeint main(无效) ..
发布时间:2021-04-22 20:39:50 其他开发

如何使用Roslyn查找变量的先前用法?

我正在写一个Rosyln分析器/分析器.它检查以确保在访问类型上的另一个(潜在危险)方法之前已调用一个方法.为了说明我的意思,下面是一些我想分析并失败的错误代码: private void myMethod(){var myThing = new MyThing();myThing.Value = null;字符串值= myThing.GetValue();//由于内部值为null,因此代码在 ..
发布时间:2021-04-22 20:39:47 C#/.NET

如何在PHP中执行静态代码分析?

是否有用于PHP源文件的静态分析工具? 二进制文件本身可以检查语法错误,但是我正在寻找功能更多的东西,例如: 未使用的变量分配 未先初始化就分配给它们的数组 以及可能的代码样式警告 ... 解决方案 从命令行以lint模式运行 php 以验证语法而无需执行: php -l文件名 高级静态分析器包括: php-sat -需要 http://stratego ..
发布时间:2021-04-22 20:39:42 PHP

找不到类型或名称空间&& quot;您是否缺少程序集引用" ;?虽然所有参考文献都是正确的

我正在尝试使用 MSBuildWorkspace类.我的项目中有所有程序集引用.当我在对象浏览器中打开引用时,我会看到要使用的名称空间和类.但是在我下面的using语句中, 使用Microsoft.CodeAnalysis.MSBuild 我得到 类型或名称空间名称"MSBuild"在名称空间"Microsoft.CodeAnalysis"中不存在(您是否缺少程序集引用?) 可笑 ..
发布时间:2021-04-18 19:50:17 C#/.NET

使用Timer计时C#代码

即使从算法分析和Big-Oh方面检查代码性能还是不错的!表示法我想看看在我的PC上执行代码要花多少钱.我已经将List初始化为9999count,甚至从其中删除了元素.可悲的是,执行此操作的时间跨度似乎是 0:0:0 .结果令人惊讶,我计时执行的方式一定有问题.有人可以帮助我确定代码的正确时间吗? IList来源=新的List(100);对于(int i = 0; i ..
发布时间:2021-04-02 20:48:34 C#/.NET

Sonarqube没有注册任何C#问题

可能与此问题相似,但自此以来已经为上一个版本提供了答案,我为此提出了一个新问题. 尽管我有意将代码气味放入我的资源中,但sonarqube并未记录任何问题.分析报告已生成( 101 KB ),已成功压缩并上传.从扫描仪一侧执行是成功的. 开发配置: IDE:Visual Studio Enterprise 2015 v14.0.25425.01 更新3 框架: v4.6.010 ..
发布时间:2021-04-01 20:49:10 C#/.NET

禁用pylint警告消息

使用 pylint 检查代码会显示很多有关变量名称的消息,如下所示: 类型方法的名称“ getCurrentChannel”无效(应匹配 [a-z _] [a-z0-9 _] {2,30} $) 如何禁用这些消息? 解决方案 pylint --disable = C0103文件名 运行此命令不会显示“无效变量名”的消息。 ..
发布时间:2020-10-04 19:15:21 其他开发

如何在VS Dev Cmd&中的msbuild期间显示分析器错误/警告使用MSBuildWorkspace

我将用一个例子来说明这种情况。 假设我创建了一个Roslyn Analyzer,当类名称为 TestClass 时抛出错误。分析器代码如下: 公共重写void Initialize(AnalysisContext context) { context.RegisterSyntaxNodeAction (方法,SyntaxKind.ClassDeclaration); } 私 ..

找出CsElement是否为静态字段? (StyleCop自定义规则)

如何查询CsElement对象以查看元素是否为静态字段? 我正在为成员字段构建一对m_和s_前缀规则和静态字段。 解决方案 您绝对应该看看 StyleCop + 。它已经包含您要创建的所有命名规则。 此外,它是开源的。因此,您可以在其中找到许多不同代码分析案例的示例(查找所有静态字段,成员字段等)。 ..
发布时间:2020-10-04 19:15:18 C#/.NET

如何解决“不要覆盖Object.finalize()方法”的问题。问题

最近,我找到了一个工具[SonarQube]来帮助我发现代码中的潜在威胁,我已经解决了该工具报告的所有问题。 但是,这也给我带来了“被保护的void finalize()”方法的潜在威胁问题,该方法已被我覆盖,该工具向我显示一条消息“请勿覆盖Object.finalize()方法”。 任何人都可以帮我解决这个问题的方法,重写的方法还包括一些业务逻辑。 解决方案 从不。决不! 从 ..
发布时间:2020-10-04 19:15:13 移动开发

代码分析,CA1709和CA1704之间丢失

由于这两篇知识库文章,我感到困惑: CA1704:标识符应正确拼写 CA1709:标识符应正确区分大小写 我有一个名为 ICD9 的属性。我的代码分析说,我必须将其更改为 Icd 这对我来说听起来很合理。我将其更改为 Icd9 (我不确定为什么它建议 Icd 而不是 Icd9 ),我得到一个不同的警告 KB表示如果我的首字母缩写是三个字母长,则应该使用Pascal大小写。 ..
发布时间:2020-10-04 19:14:07 C#/.NET

Textmate使用一堆文件和CUDA浏览C ++项目

我是Textmate的新手。我必须处理一个CUDA C ++项目,此刻只是想获取该项目(文件和目录的束),从主C ++文件开始,然后从那里选择函数,然后Textmate跳转到通常是在其他文件中。 不需要编译,只需有效地浏览代码即可 解决方案 您需要 CTag捆绑包用于TextMate。 这是一个教程,其中说明了如何手动操作捆绑包为您提供的服务。 ..
发布时间:2020-10-04 19:13:00 C/C++开发

从声纳分析中排除一些PHP代码

是否有一种方法可以从声纳分析中排除某些代码行而不排除整个源代码文件? 我会给你一个具体的例子,我需要为未使用的函数参数排除某种代码味道: p> 我实现了这样的验证方法: 公共函数validateTruth(string $ attribute,$ value):布尔 { $ acceptable = [ '0', 0, 'false', false, '1', 1, ' ..
发布时间:2020-10-04 19:11:58 PHP