官术网_书友最值得收藏!

How to do it...

  1. Open a C# project, say ClassLibrary, with the analyzer NuGet package System.Runtime.Analyzers.nupkg prerelease version 1.2.0-beta2 installed in it.
  2. Add the following source code to the project and verify that no CA1813: Avoid unsealed attributes is fired:
using System;

namespace ClassLibrary
{
[AttributeUsage(AttributeTargets.All)]
public class MyAttribute: Attribute
{
}
}
  1. In the solution explorer, navigate to ClassLibary | References | Analyzers, right-click on the Analyzers node and execute the context menu command Open Active Rule Set:
  1. In the Rule Set editor, search CA1813 in the textbox in the top-right corner.
  2. For the CA1813, search the result listed under System.Runtime.Analyzers, change the Action from None to Warning, and hit save:
  1. We should now see a CA1813 warning being reported on our attribute definition in the source code.
  2. In the solution explorer, verify that the project now contains that a new ClassLibrary.ruleset item, and a new CodeAnalysisRuleset property was added to the project file:
<CodeAnalysisRuleSet>ClassLibrary.ruleset</CodeAnalysisRuleSet>
  1. Open ClassLibrary.ruleset in a text editor outside of Visual Studio and verify that it has the following rule action specification for CA1813:
 <Rules AnalyzerId="System.Runtime.Analyzers" RuleNamespace="System.Runtime.Analyzers">
<Rule Id="CA1813" Action="Warning" />
</Rules>
  1. Edit the ruleset file to change the ruleset Action for CA1813 from Warning to Error and save the file.
  2. Switch back to Visual Studio and confirm that the source code editor now shows a red squiggle and that the error list also reports an error for CA1813:
  1. Double-click on ClassLibrary.ruleset in the solution explorer to open it with the Rule Set editor and verify that the rule severity entry for CA1813 is now showing as Error.
  2. Build the project and verify that the error CA1813 is reported, confirming that the ruleset setting is preserved for command-line builds as well.
主站蜘蛛池模板: 新营市| 罗甸县| 南汇区| 特克斯县| 河西区| 卓尼县| 吉首市| 长沙县| 石楼县| 临沭县| 八宿县| 米泉市| 三江| 武乡县| 鄂托克旗| 芦溪县| 连城县| 临武县| 江川县| 昌都县| 昌吉市| 绥宁县| 上虞市| 北辰区| 延边| 栾川县| 阿城市| 疏附县| 绵竹市| 麦盖提县| 凤山市| 谷城县| 吉木萨尔县| 南京市| 枣庄市| 衡水市| 遵义县| 临海市| 明光市| 彭山县| 康马县|