繁体   English   中英

验证解决方案中的.csproj文件

[英]Validate .csproj files in solution

我希望能够在将.csproj文件添加到解决方案中或在我们的CI构建服务器上构建它们时进行验证。

验证意味着检查,例如:

  • 路径和项目文件名匹配约定
  • 程序集名称和名称空间匹配命名约定
  • 平台目标正确
  • 输出路径正确(发布和调试)
  • 警告级别正确并且警告被视为错误
  • 项目中存在某些文件( AssemblyInfo.cs等)。
  • 已经正确引用了程序集
  • 等等

另一个有用的功能是能够忽略某些项目,或者更好的是能够定义项目分组,每个分组都有自己的验证规则。

在我看来,这是许多其他人必须具备的问题,但是我还没有找到任何可以简化或自动化该过程的工具。 我以为它可能像StyleCop或FxCop。

是否存在这样的工具,或者我必须创建自己的自定义构建步骤?

(我也在使用ReSharper,因此会考虑使用插件,尽管这可能会使在构建服务器上的验证更加困难。)

AFAIK没有实现此目的工具 这就是为什么我的一位同事编写了一个自定义工具来使用自定义规则验证器来验证.csproj.vbproj文件的原因。

有一些类可以检查项目文件,例如Microsoft.Build.Evaluation.Project (Assembly Microsoft.Build )。 但是,当您尝试解析解决方案文件时,它变得很脏。 我强烈建议您在StackOverflow上看看这个问题

我正在谈论的内部验证工具仅检查定义的规则(例如ToolsVersionTargetFrameworkVersionTargetCPU ,...),并以一种格式绘制相应的输出,以便构建服务器可以解析消息并在出现以下情况时停止构建重要的规则被打破了。

祝好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM