我遇到了 StyleCop 的问题,这很可能是一件愚蠢的小事,但我无法纠正它,它让我发疯,因为它让我失去了很多时间。我希望你能帮助我。
问题如下:我正在与一些同事一起从事一个大型项目,因此代码由 Subversion 控制,并以树状文件夹层次结构排列。我们在这个项目中使用 StyleCop,我们希望对所有源代码文件应用相同的设置和相同的字典。
为了做到这一点,我将设置文件放在根目录中,以便编译器在编译项目的任何源代码文件时可以访问它,正如此处指定的那样。
但我的麻烦在于字典。我希望字典文件与设置文件放在同一目录中,因此它也受版本控制。问题是,理论上,根据这个,我可以指定一个相对于设置文件位置的路径,并且将在那里搜索字典。
所以,我只想告诉 StyleCop 在设置文件本身所在的同一文件夹中搜索字典!但我似乎无法写出表示“当前文件夹”的相对路径。我已经尝试了很多东西:., ".", $., $(.), ./, .\, %.%... 在设置文件中,实际上是一个 XML 文件,它看起来像这个:
<StyleCopSettings Version="105">
<GlobalSettings>
<CollectionProperty Name="DictionaryFolders">
<Value>%.%</Value> <!-- Relative paths here-->
<Value>.</Value>
<Value>./</Value>
<Value>.\</Value>
<!-- etc -->
</CollectionProperty>
</GlobalSettings>
...
但是这些语法都不起作用。事实上,它们中的许多使编译器报告它无法解析 XML 设置文件的警告。
我错过了什么?正确的语法是什么样的?还是我做错了什么?
我希望我已经清楚地表达了我的观点,我非常感谢一些帮助。
问候,艾丽西亚。
编辑:
我终于设法从不同的角度解决了这个问题。我没有使用与设置文件放在同一文件夹中的字典,而是在设置文件本身中添加了我需要的单词,如下所示:
<StyleCopSettings Version="105">
<GlobalSettings>
<CollectionProperty Name="RecognizedWords">
<Value>aa</Value>
<Value>aspx</Value>
<Value>clk</Value>
<Value>dll</Value>
<!-- etc -->
</CollectionProperty>
</GlobalSettings>
...