我试图切换到TFS 2015 SDK dll(版本14)有几个原因。首先,他们是nuget,第二,2013 SDK dll(版本12)需要在IIS中翻转32位标志。
我下拉nutget package,命名空间全部与现有的12版名称空间对齐。
一切都很好,本地部署没有错误。
但是,当我尝试使用WorkItemStore
服务加载项目时。
TfsTeamProjectCollection collection = new TfsTeamProjectCollection(URL);
var service = collection.GetService<WorkItemStore>();
我明白了:
其他信息:无法加载DLL &#39; Microsoft.WITDataStore64.dll&#39;:指定的模块不能 找到。 (HRESULT异常:0x8007007E)
当我在IIS中切换回32 bt标志时,我得到:
其他信息:无法加载DLL &#39; Microsoft.WITDataStore32.dll&#39;:指定的模块不能 找到。 (HRESULT异常:0x8007007E)
注意:这是所有正常工作的代码,我所做的就是删除对GAC程序集的引用并添加NUGET包。
根据Microsoft,nuget包应该与TFS 2013一起使用,并为2013 SDK的用户工作
现有的Windows应用程序利用旧版本的TFS客户端 OM。
答案 0 :(得分:4)
以上都不适合我。我不得不将该文件复制到我的 C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE 文件夹(通过使用procmon找到这个,看看我的应用程序在哪找它)
答案 1 :(得分:2)
我必须将dll添加到我的解决方案的启动项目中才能使其工作。 例如:
MyTFSApp (Windows客户端) nuget包安装了Microsoft.TeamFoundationServer.ExtendedClient 要么 Microsoft.WITDataStore32.dll已添加到bin文件夹
MyTfsLibrary (包含访问WorkItemStore的代码的类库) nuget包安装了Microsoft.TeamFoundationServer.ExtendedClient
答案 2 :(得分:0)
将文件Microsoft.WITDataStore64.dll复制到文件夹C:\ Windows \ System32
答案 3 :(得分:-1)
尝试将这些Dll从GAC复制到本地bin中。 Nuget包通常是创建bin的引用,所以如果你的程序在那里寻找而不是GAC,那可能是它抛出错误的原因。