ldr*_*rdl 6 .net code-analysis default visual-studio-2012
有没有办法默认为每个项目激活Visual Studio 2012的代码分析功能?并且,如果可能,默认情况下将规则设置为"Microsoft All Rules".
每次创建新项目时,我都必须在项目属性中手动激活"在构建时启用代码分析",并且必须将规则设置为所有规则.有时我会忘记这样做,并且必须解决更多问题.如果它默认激活我可以防止.
小智 8
您可以编辑Visual Studio在创建新项目时添加常用导入时使用的默认项目模板,问题在于原型设计是否需要这些设置.
我倾向于确保每个项目都导入一组通用的msbuild属性和项目组.这在默认情况下不起作用,因为您必须编辑每个proj文件并添加导入,但优点是只需一行就可以放置这个导入的proj文件中的代码分析设置,例如,StyleCop设置,代码分析使用的字典文化,您自己的规则集文件,常见的AssemblyInfo.cs,snk文件等
我倾向于在.csproj的最后一行之前放置以下行
<Import Project="..\Build\MyCompanySettings.proj" />
Run Code Online (Sandbox Code Playgroud)
然后在导入的文件中这样的东西.这种方式的项目具有相同的设置.
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<RunStyleCop>true</RunStyleCop>
<StyleCopOverrideSettingsFile>..\Build\Settings.StyleCop</StyleCopOverrideSettingsFile>
<RunCodeAnalysis>true</RunCodeAnalysis>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>..\Build\MyCompany.snk</AssemblyOriginatorKeyFile>
<CodeAnalysisRuleSet>..\Build\MyCompany.ruleset</CodeAnalysisRuleSet>
<StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
<SkipPostSharp>True</SkipPostSharp>
<CodeAnalysisCulture>en-GB</CodeAnalysisCulture>
</PropertyGroup>
<ItemGroup>
<None Include="..\Build\MyCompany.snk">
<Link>MyCompany.snk</Link>
</None>
<CodeAnalysisDictionary Include="$(BuildTargetsDirectory)\MyCompanyCustomDictionary.xml">
<Link>Properties\MyCompanyCustomDictionary.xml</Link>
</CodeAnalysisDictionary>
<Compile Include="..\Build\VersionInfo.cs" >
<Link>Properties\VersionInfo.cs</Link>
</Compile>
<None Include="..\Build\MyCompany.ruleset" >
<Link>MyCompany.ruleset</Link>
</None>
</ItemGroup>
<Import Project="$(MSBuildProgramFiles32)\MSBuild\StyleCop\v4.7\StyleCop.targets" Condition="'$(RunStyleCop)' == 'true'"/>
</Project>
Run Code Online (Sandbox Code Playgroud)