2010-06-11 94 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。

相关问题