2

我们有一台安装了 Team Foundation Server 2008 的服务器。使用 Visual Studio 2008 和 Visual Studio 2010 的客户端连接到它。我为 TFS 编写了一个自定义签入策略,它在 VS2010 中按预期工作,但在 VS2008 中没有。

我最初在 VS2010 中开发它,但在让它工作时遇到了一些问题。为了排除我的自定义策略的问题,我在 VS2008 中重新创建了解决方案和项目(因为我在 VS2008 中有一个工作示例)。

开发完成后,我尝试在 VS2010 中进行设置,但遇到了一些问题。我发现了格兰特·史密斯 (http://connect.microsoft.com/VisualStudio/feedback/details/553740/vs-2008-tfs-checkin-policies-fail-to-load-with-vs-2010) 的这篇文章,他建议更改 VS2010 的绑定重定向。这解决了问题,政策现在可以正常工作。

但是,它不适用于 VS2008。当我尝试签入任何代码时,它会显示:“TF10139:未满足以下签入策略。我的自定义签入策略中的内部错误”。

当我尝试更改策略的设置时,它给了我一条错误消息:“加载我的自定义签入策略策略时出错(策略程序集 'MyCheckinPolicy, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' 不是注册。)。安装说明:“。

即使它在错误消息的末尾显示“安装说明:”,也不会显示任何其他内容。

有谁知道为什么会发生这种情况。

TIA

4

1 回答 1

1

如果您引用 v10.xxx 客户端 dll,您可能会发现您的策略适用于 vs2010;如果您引用 v9.xxx dll,您可能会发现您的策略适用于 vs2008。

我还没有找到一种方法来拥有一个适用于两者的单一策略 dll,但我发现如果我编译 dll 两次(每个 VS 一次),我可以在我的系统上安装这两个 dll,然后修改 Checkin Policies 注册表项所以每个 VS 都指向正确的 dll。

于 2013-06-13T13:05:20.307 回答