3

有没有办法“以编程方式”将差异工具(如 WinDiff 和 WinMerge)与 Visual Studio 2010 集成?这些文件不是在解决方案资源管理器中找到的文件。

程序必须在列表中搜索并存储从某个目录中找到的文件,然后递归地比较具有相同名称的文件。

4

2 回答 2

5

据我所知,您正在寻找 TFSDifference类。以下是如何使用它的示例:

string f1 = @"file1.cs";
string f2 = @"f2.cs";

Microsoft.TeamFoundation.VersionControl.Common.DiffOptions options = new Microsoft.TeamFoundation.VersionControl.Common.DiffOptions();
options.Recursive = true;
options.StreamWriter = new System.IO.StreamWriter(Console.OpenStandardOutput());
options.UseThirdPartyTool = true;
options.OutputType = Microsoft.TeamFoundation.VersionControl.Common.DiffOutputType.Unified;            

var diff = Difference.DiffFiles(
            f1, FileType.Detect(f1, null),
            f2, FileType.Detect(f2, null),
            options);

while (diff != null)
{
    // Do whatever it is that you want to do here            
    diff = diff.Next;
}
于 2013-11-18T13:01:11.463 回答
0

你可能想看看这个扩展是否是你需要的:http: //visualstudiogallery.msdn.microsoft.com/dace3633-0b51-4629-85d4-c59cdce5bb3b ?SRC=Featured

于 2013-10-30T07:46:28.767 回答