无法使用nuget包加载Microsoft.WITDataStore32.dll:Microsoft.TeamFoundationServer.ExtendedClient

时间:2019-03-28 09:20:07

标签: c# visual-studio dll tfs

我想使用TFS API使用Visual Studio / c#创建一个库,以创建/更新工作项。

我将nuget包“ TeamFoundationServer.ExtendedClient”添加到我的库中,当我尝试访问WorkItemStores时出现以下错误:

  

无法加载DLL'Microsoft.WITDataStore64.dll。

当我直接在控制台应用程序上尝试时,它就起作用了,而当我在库中引用它并从控制台应用程序中调用它时,它就没有了。

另一个奇怪的是,dll正确位于我的bin文件夹中(Microsoft.WITDataStore32.dll和Microsoft.WITDataStore64.dll)。

我尝试在本地环境中重新安装TFS,重新安装NuGet程序包,尝试使用另一个库,但仍然无法正常工作。

        tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(uri)); // https://mytfs.visualstudio.com/DefaultCollection
        tfs.Authenticate();

        var workItemStore = new WorkItemStore(tfs);

有解决方案或至少有解决方法的人吗?

1 个答案:

答案 0 :(得分:0)

我解决了问题, 如果可以的话,请采用以下解决方法:

需要在调用该库的控制台应用程序上引用该dll。

我们可以在您的库postbuild命令中使用xcopy命令来做到这一点。

添加此内容(用您的名称应用程序替换TestConsoleApp):

xcopy $(SolutionDir)TestConsoleApp \ bin \ Debug \ / Y / R

享受。

编辑:这不是解决问题的干净方法,相反,我使用其他方法创建工作项,我们可以在此处找到Microsoft文档:https://docs.microsoft.com/en-us/azure/devops/integrate/quickstarts/create-bug-quickstart?view=azure-devops