我们正在利用我们的.NET C#解决方案第三方工具。该工具具有自己的语法并与Visual Studio集成。当我们使用这个工具时,我们在Visual Studio中编写它的标记,然后当我们构建解决方案时,定制工具运行并根据我们写的标记生成一个.cs文件。
这个生成的源文件包含一个版本号,当我们将这些版本控制到版本控制(无尽冲突)时,会导致问题。我们的理解是,不检查生成的源文件是最佳实践。
所以我们排除了SVN生成的.cs文件,然后我们遇到的下一个问题是Visual Studio解决方案引用了这些文件,所以当TeamCity(我们的持续构建/集成软件)去构建解决方案时会立即失败,因为它无法找到这些文件。
然后,我们将这些从解决方案中删除,并将它们从SVN中排除,这固定了原始问题,我们不再检查生成的代码,并且它在TeamCity中正常生成(因为每次都会重新生成文件建立)。
我们现在有一个新问题 - 由于生成的文件不再包含在解决方案中,因此无法找到生成的类,因此智能感知和代码检查失败。该解决方案构建得很好(因为代码在构建期间被重新生成)。
问题
有没有办法告诉ReSharper的,包括在其代码检查产生的.cs文件?这些文件在解决方案的外部,但它们位于obj目录中。
干杯,
泰勒
难道你不能保留解决方案中的文件,并添加一个预生成步骤来生成一个空的.cs文件,如果它不存在?这将保持构建的快乐。我们在我们的项目中使用了一个类似的技术,用于包含开发人员可覆盖的数据库连接字符串如果有帮助,我有一些示例MSBuild目标。 –
嗨RichTea,听起来不错,我很乐意看到你的样品,如果可能的话? – Tyler