我正在尝试创建一个Visual Studio 2012加载项,该加载项能够侦听各种TFS版本控制事件,并在事件发生之前或之后执行自定义操作。但是在运行程序时显示以下错误
[A] Microsoft.VisualStudio.TeamFoundation.TeamFoundationServerExt无法强制转换为[B] Microsoft.VisualStudio.TeamFoundation.TeamFoundationServerExt。类型A源自'Microsoft.VisualStudio.TeamFoundation,Version = 11.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a',位于'默认'位置'C:\ Windows \ Microsoft.Net \ assembly \ GAC_MSIL
经过一番研究,发现使用了Microsoft.VisualStudio.TeamFoundation.dll(版本-11.0.0.0),它将解析该程序。但是我怎样才能将这个版本的dll添加到我的项目中答案 0 :(得分:1)
希望这对某人有用,关于这个主题还有一些其他线程 - 在Visual Studio 2012中,我发现如果我这样做会出现转换错误:
DTE2 dte2 = (EnvDTE80.DTE2)Marshal.GetActiveObject("VisualStudio.DTE.12.0");
TeamFoundationServerExt tfsExt = dte2.GetObject("Microsoft.VisualStudio.TeamFoundation.TeamFoundationServerExt") as TeamFoundationServerExt;
但是如果我这样做的话,它的工作正常:
EnvDTE.DTE dte = Package.GetGlobalService(typeof(EnvDTE.DTE)) as EnvDTE.DTE;
TeamFoundationServerExt ext = dte.GetObject("Microsoft.VisualStudio.TeamFoundation.TeamFoundationServerExt") as TeamFoundationServerExt;
我从中获得了参考资料 C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ PrivateAssemblies \ Microsoft.VisualStudio.TeamFoundation.dll
答案 1 :(得分:0)
我们可以从以下路径获得参考
C:\的Windows \ Microsoft.Net \组件\ GAC_MSIL \ Microsoft.VisualStudio.TeamFoundation \ v4.0_11.0.0.0__b03f5f7f11d50a3a \ Microsoft.VisualStudio.TeamFoundation.dll