问题标签 [fxcop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1746 浏览

static-analysis - 如何在现有代码库上实现 FxCop / 静态分析

在存在违规的现有代码库上实施 FxCop / 静态分析时使用了哪些策略?如何最有效地减少静态分析违规?

0 投票
3 回答
6649 浏览

visual-studio - 排除源代码中的代码分析规则

在我正在研究 FxCop 的一个项目中,我在 Windows 窗体设计器生成的 InitializeComponent() 方法上显示了很多(我的意思是超过 400 个)错误。大多数错误只是标签的 Text 属性的分配。

我想在源代码中抑制这些方法,所以我将 FxCop 生成的抑制代码复制到 AssemblyInfo.cs 中,但它不起作用。

这是 FxCop 复制到剪贴板的属性。

任何人都知道抑制此消息的正确属性吗?

PS:我正在使用 Visual Studio 2005、C#、FxCop 1.36 beta。

0 投票
14 回答
48701 浏览

.net - 为什么/何时应该在 .net 中使用嵌套类?还是不应该?

Kathleen Dollard 的 2008 年博客文章中,她提出了在 .net 中使用嵌套类的有趣理由。然而,她也提到 FxCop 不喜欢嵌套类。我假设编写 FxCop 规则的人并不愚蠢,所以这个立场背后一定有推理,但我一直找不到。

0 投票
4 回答
8629 浏览

.net - 是否有自定义 FxCop 规则可以检测未使用的 PUBLIC 方法?

我刚试过 FxCop。它确实检测到未使用的私有方法,但未检测到未使用的公共方法。是否有我可以下载的自定义规则,插件将检测未从同一程序集中调用的公共方法?

0 投票
5 回答
899 浏览

visual-studio - FxCop/StyleCop 是否可以仅限于使用 Visual Studio 分析选定的方法?

我正在组建一个维护团队,并希望引入 FxCop 和 StyleCop 等工具来帮助改进代码并向开发人员介绍更好的编程技术和标准。由于我们正在维护代码而不是进行重大改进,因此在进行更改时我们可能一次只处理几个方法/例程。

是否可以将 FxCop/StyleCop 定位到 Visual Studio 中的特定代码区域,以避免在分析整个类或项目时被引发的所有问题所淹没?如果有可能,你会怎么做?

谢谢,马特

0 投票
10 回答
10508 浏览

c# - 对于任何 C# 开发人员来说,哪些是“必须遵循”的 FxCop 规则?

我计划在我们正在进行的项目之一中开始使用 FxCop。但是,当我尝试选择所有可用规则时,看起来我必须对我的代码进行大量更改。作为“团队成员”,我不能立即开始进行这些更改,例如更改命名约定等。无论如何,我想开始使用具有最小规则集的 FxCop,并随着我们的继续而逐渐增加规则集。你能建议我一些必须有我应该开始遵循的 FxCop 规则吗?或者你有什么更好的方法吗?

注意:我的大部分代码都是用 C# 编写的。

0 投票
2 回答
2243 浏览

c# - 使用列表的最佳方式并暴露 Collection

我必须实现一个 Web 服务,它公开一个值列表(整数、自定义类等)。我的工作解决方案返回 a List<T>,根据 FxCop 最好返回 a Collection<T>or ReadOnlyCollection<T>

如果我选择返回 a ReadOnlyCollection<T>,Web 服务会显示如下错误:

为了 XML 可序列化,继承自的类型ICollection必须Add(System.Int32)在其继承层次结构的所有级别上都有实现。 System.Collections.ObjectModel.ReadOnlyCollection 1 [[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]不执行Add(System.Int32)

您最喜欢在内部使用 aList<T>和公开 a 的方式是Collection<T>什么?(使用 C#,最好只使用 framework 2.0)

0 投票
2 回答
1320 浏览

.net - FxCop 的 CollectionPropertiesShouldBeReadOnly 规则是否与 spring 框架不兼容?

FxCop 有CollectionPropertiesShouldBeReadOnly 规则,如果你的类有某种客户可以设置的集合属性,它会抱怨。相反,它建议将属性设为只读并提供 Clear() 方法和 Add() 或 AddRange() 方法来更改集合的内容。

我同意这会产生一个更清洁、更可控的界面,但我正在努力使该界面与 Spring 框架一起工作。如果我想用协作者集合配置一个对象,我必须公开一些集合属性来注入协作者。我查看了 Spring 文档,但看不到任何方法可以告诉 Spring 调用 AddRange() 方法,我是否遗漏了什么?

现在,我将排除警告,并说明它是 Spring 配置所必需的。

更新:因为在过去的两个月里我没有在这里吃任何东西,所以我在FxCop 论坛上发布了同样的问题。

0 投票
5 回答
2456 浏览

.net - 检测 .NET Framework 3.5 SP1 依赖项(cmp. 3.5 w/o SP1)

我在我的机器上使用 3.5 SP1,而我们的客户目前使用没有 SP1 的 3.5。我不知道在 VS2008 中如何将解决方案或项目定位到不带 SP1 的 3.5,只有我安装的带 SP1 的 3.5。

如果我们使用 3.5 w/o SP1 中不可用的函数或构造函数,代码将无法正常工作。

也就是说,我想在编译时检测没有 SP1 的情况。

到目前为止,我们已经完成了测试(在 VM 或单独的机器中)以查看应用程序是否中断,并且有时当我们使用在 SP1 之前不可用的 API 部分时它确实会中断。问题是它仅在代码实际运行时(在运行时)而不是在加载程序集时中断。

一种解决方案是拥有一台带有 VS2008 w/o SP1 的机器并尝试编译该项目。但是,我更喜欢通过分析源代码或我们生成的程序集来帮助我检测对 3.5 SP1 的依赖项(由于使用新的 API 或其他原因)的工具。

我的谷歌能力对这个问题还不够强大,有什么提示吗?

0 投票
5 回答
1057 浏览

code-analysis - 您停用了 FxCop 中的哪条规则?

我个人还没有使用 FxCop。我们想在进行代码分析之前先进行单元测试。但是,您会永久停用哪些规则?您会在什么情况下暂时停用哪些规则?