c# - FxCop 警告 CA1006 是否有任何好的解决方法?

标签 c# .net fxcop

我在使用 FxCop warning CA1006 时遇到问题, Microsoft.Design “DoNotNestGenericTypesInMemberSignatures”。具体来说,我正在设计一个 ReportCollection<T>ReadOnlyCollection<Report<T>> 继承的类, 及其 public构造函数采用 IList<Report<T>>作为参数。

修复此警告的建议不是很有用:

"To fix a violation of this rule, change the design to remove the nested type argument." There are two ways I can see so far to change the design as suggested:

  1. 构造函数internal .这在我的情况下不起作用。构造函数必须是 public因为这个集合类需要在程序集外被代码实例化。
  2. 让构造函数接受一个Report<T>[]而不是 IList<Report<T>> .这是次优的,因为外部代码应该具有使用动态大小数据结构的灵 active ,如 List<T>而不是固定大小的数组。

此时,我已经放弃并抑制了这个警告。有更好的解决方案吗?

最佳答案

我会接受 FxCop 的警告,就好像它们是来自一个极度固执的同事的建议。完全可以忽略(抑制)它建议的某些内容。

关于c# - FxCop 警告 CA1006 是否有任何好的解决方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/417634/

相关文章:

msbuild - 禁用代码分析输出 MSBuild

c# - 通用类型的 FXCop 违规

c# linq 更新数据库中的所有记录

c# - 在 .NET 中使用正则表达式拆分字符串

.net - Entity Framework 中的可空实体投影

.net - .Net 项目中的拼写检查消息字符串

c# - 为什么Task.Delay后Task.CurrentId变成NULL?

c# - 如何使用模式从字符串中获取字符串列表?

c# - 如何在 datagridview 中填充数组?

.net - 如何完全重置所有 Entity Framework 6 迁移历史? (僵尸迁移!)