2010-06-11 97 views
1

我正在探索的文件夾與C#項目結構如下所示:如何找到哪些現有的.NET解決方案包含某個項目?

  • 項目
    • 項目A
    • 項目B
    • 項目C
    • ProjectD

分散在與.csproj文件相同的文件夾中,有幾個解決方案(.sln)文件。有沒有一個快速的方法來找到所有的解決方案,包括ProjectD.csproj?我可以逐一打開它們並查看它們包含的內容,但我希望有一個功能,例如「查找包含此項目的所有解決方案」。

回答

2

只要做一個Find in Files搜索擴展名爲.sln的所有文件,並尋找以單詞「Project」開頭的任何行。

我喜歡TextPad,所以我用它來搜索,但有很多其他工具,包括許多免費的。

+0

舉例來說,grepWin和WinGrep可以提供它們所在文件的那些行。 – reinierpost 2010-06-11 12:31:45

1

我不認爲這是可能的,因爲VS一次打開一個解決方案。但是,創建一個在.sln文件中搜索的簡單腳本應該不難(比沒有好)。

1

安裝Cygwin並通過解決方案文件運行grep。你永遠不會回頭...

1

以上兩種解決方案(David M'sho1's)都可以使用。

就我個人而言,我發現grep解決方案比嘗試使用MS文件搜索實用程序更快,但第二個運行良好,尤其是如果您不想安裝額外的軟件來執行您想要的操作。

0

我寫了一個Perl腳本來完成它(使用libxml2來解析文件,因此它比grepping稍微複雜)。這不是完美的,但我繼續使用每個代碼庫來改進它。 我目前沒有發佈腳本。

一個更根本的改進是使用Visual Studio API進行編程。

在文件內部對文件名進行格式化的最粗糙的方法是在我的另一個Perl腳本xref中實現的。不幸的是,正確使用它可能會非常棘手,所以您可能更喜歡手動使用find和grep。

相關問題