【发布时间】:2011-12-25 13:08:06
【问题描述】:
这是Team Foundation Server: Getting the Changeset Id from PolicyBase object的后续问题
我想在签到时运行一些代码。上面链接问题中的答案将我指向this page on MSDN。
我没有完全理解页面上的解释,我不确定签入事件处理程序将在哪里运行。
这是应该在每个客户端机器上运行的应用程序中,还是需要在实际的 TFS 服务器上运行?
我需要确保每次签入时都会运行签入事件处理程序代码,无论是哪个客户签入。
我尝试下载该 Microsoft 页面上提供的示例代码,但它不起作用。 我可以连接到 TFS 服务器。当我单击“获取已注册事件列表”按钮时,左侧列表框会填充 13 个项目,所有项目的名称都为
Microsoft.TeamFoundation.Server.RegistrationEntry
当我点击其中一个项目时,我会收到一个带有消息的 TypeLoadException
无法从程序集“Microsoft.TeamFoundation, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”加载类型“Microsoft.TeamFoundation.Server.Subscription”
(奇怪的是,这似乎是在引用 VS2010 版本的程序集,即使它是我已链接到项目的 VS2008 版本)。
我在这里做错了什么?
【问题讨论】:
-
顺便说一句,您需要使用Fusion log viewer. 进行调试,只需确保以管理员身份运行它,打开日志,然后在尝试调试之前重新启动。您将看到 CLR 在哪里寻找程序集,以及什么版本,并从那里确定为什么找不到它(如果您甚至安装了它)。
标签: visual-studio-2010 visual-studio-2008 tfs