C# CA1811错误在我认为应该显示时未显示

C# CA1811错误在我认为应该显示时未显示,c#,fxcop,C#,Fxcop,我试图在我的数据库层中找到未使用的方法,因为我只是从旧项目中复制了它,并检查我仍然需要什么和不需要什么。但是fxcop不会显示预期的错误。有几种方法没有被调用,但没有列出 我将所有方法从public更改为internal,但它仍然没有显示错误 该类具有以下结构: namespace mynamspace { public partial class WebsiteModel { static ILog log = LogManager.GetLogger(typeof(W

我试图在我的数据库层中找到未使用的方法,因为我只是从旧项目中复制了它,并检查我仍然需要什么和不需要什么。但是fxcop不会显示预期的错误。有几种方法没有被调用,但没有列出

我将所有方法从public更改为internal,但它仍然没有显示错误

该类具有以下结构:

namespace mynamspace {
    public partial class WebsiteModel {
        static ILog log = LogManager.GetLogger(typeof(WebsiteModel));

        manyunusedmethods
    }
}
还有其他人有这个问题吗?WebItemModel的另一部分是类型
DbContext

编辑我尝试了一些方法,但似乎从未显示错误CA1811。我做错了什么

我的规则集文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="Coding Lizards fxcop ruleset" Description="Dieser Regelsatz enthält alle Regeln. Das Ausführen dieses Regelsatzes führt möglicherweise zu einer hohen Anzahl gemeldeter Warnungen. Verwenden Sie diesen Regelsatz, um einen Überblick über alle Probleme in Ihrem Code zu erhalten. Dies kann Ihnen bei der Entscheidung behilflich sein, welche der spezifischeren Regelsätze für Ihre Projekte am besten geeignet sind." ToolsVersion="11.0">
  <IncludeAll Action="Warning" />
  <Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
    <Rule Id="CA1811" Action="Error" />
    <Rule Id="CA1823" Action="Error" />
    <Rule Id="CA1804" Action="Error" />
    <Rule Id="CA1801" Action="Error" />
  </Rules>
</RuleSet>

它适用于我在VS2013上使用以下自定义规则集的情况:

<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="Uncalled Private Code" Description="Custom Ruleset" ToolsVersion="12.0">
  <Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
    <Rule Id="CA1811" Action="Error" />
  </Rules>
</RuleSet>


仅供参考,您使用的单词“throw”不正确,这可能就是为什么现在对这个问题的投票结果非常接近的原因。抛出异常。CA1811是一个错误,应该显示,而不是抛出。顺便说一句,FxCop不能向您显示这个问题并不奇怪。除了
private
方法之外,我不确定它是否可以这样做。另一方面,如果您使用ReSharper的“解决方案范围的分析”功能,它当然可以向您展示。它将显示解决方案中是否有使用这些方法的代码(例如,除非它们是接口实现的一部分)。它甚至没有显示未使用的私有方法。我不想使用ReSharper,因为它没有免费版本,嗯…我使用VS2012,但它不工作。您可以在ASP.net MVC4 Razor项目中试用吗?代码是否正在访问某些字段或属性?就我所见,在Web应用程序项目中的分析有些不可靠。当方法位于控制器内部、非静态或访问属性时,它无法正确识别……可能是这样,代码位于控制器和模型中。是的,它确实访问属性,是的,它不是静态的。问题是,如果我只是提取外部库中的所有内容,我无法检查,因为它是公开的。那真烦人-