我在TFS工作区调用MergeContent方法(在我的示例中为App.Instance.TFSWorspace),如下所示:
bool result = App.Instance.TFSWorkspace.MergeContent(Conflict, true);
这导致'result'被设置为false,但是即使第二个参数表明使用外部合并工具,也不会显示合并工具。
代码最初放在MVVM模型之后的RelayCommand中。只是为了确保这不是问题,我把它移到后面的代码中,同样的事情仍然发生。此外,我正在使用默认的TFS工具,我没有配置任何第三方比较/合并工具。
有谁知道为什么会这样?
答案 0 :(得分:1)
可能出现以下几种可能原因:
diffmerge.exe不在您正在运行的程序的路径中 默认的外部合并工具是在\ Microsoft Visual Studio 10.0 \ Common7 \ IDE中找到的diffmerge.exe(根据您的版本可能有所不同)。如果这不在程序的路径中,则在发生冲突时将无法启动diffmerge进程
程序没有UI shell 如果您的程序是服务或Web应用程序,则会发生这种情况。这可能不是你的情况,但我不完全确定描述
最有可能的问题是上面的#1。我先检查一下。