我們正在利用我們的.NET C#解決方案第三方工具。該工具具有自己的語法並與Visual Studio集成。當我們使用這個工具時,我們在Visual Studio中編寫它的標記,然後當我們構建解決方案時,定製工具運行並根據我們寫的標記生成一個.cs文件。
這個生成的源文件包含一個版本號,當我們將這些版本控制到版本控制(無盡衝突)時,會導致問題。我們的理解是,不檢查生成的源文件是最佳實踐。
所以我們排除了SVN生成的.cs文件,然後我們遇到的下一個問題是Visual Studio解決方案引用了這些文件,所以當TeamCity(我們的持續構建/集成軟件)去構建解決方案時會立即失敗,因爲它無法找到這些文件。
然後,我們將這些從解決方案中刪除,並將它們從SVN中排除,這固定了原始問題,我們不再檢查生成的代碼,並且它在TeamCity中正常生成(因爲每次都會重新生成文件建立)。
我們現在有一個新問題 - 由於生成的文件不再包含在解決方案中,因此無法找到生成的類,因此智能感知和代碼檢查失敗。該解決方案構建得很好(因爲代碼在構建期間被重新生成)。
問題
有沒有辦法告訴ReSharper的,包括在其代碼檢查產生的.cs文件?這些文件在解決方案的外部,但它們位於obj目錄中。
乾杯,
泰勒
難道你不能保留解決方案中的文件,並添加一個預生成步驟來生成一個空的.cs文件,如果它不存在?這將保持構建的快樂。我們在我們的項目中使用了一個類似的技術,用於包含開發人員可覆蓋的數據庫連接字符串如果有幫助,我有一些示例MSBuild目標。 –
嗨RichTea,聽起來不錯,我很樂意看到你的樣品,如果可能的話? – Tyler