API资源位置未注册 [英] API resource location is not registered

查看:49
本文介绍了API资源位置未注册的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我能够创建项目/删除/重命名所有内容,但是当要进行分组时,它会说"API资源位置ebbe6af8-0b91-4c13-8cf1-777c14858188未在

2.2

然后检查所使用的DLL调用的API版本.我在nuget网站上找不到此信息

就我而言,它看起来像这样

因此nuget版本16.153.0中的 API使用带有5.1.1的调用

因此,在我的情况下,TFS 2018 UPDATE 1不支持API版本5.1.1,因此,我将需要降级nuget或升级TFS Server版本(或两者)

i am able to create project/delete/rename everything but when it come for getting group its says "API resource location ebbe6af8-0b91-4c13-8cf1-777c14858188 is not registered on http://khanamar3:8080/tfs/DefaultCollection/" please help.....

public PagedGraphGroups GetAllGroups()
    {
        VssConnection connection = Context.Connection;
        GraphHttpClient graphClient = connection.GetClient<GraphHttpClient>();
        //error coming in next line...
        PagedGraphGroups groups = graphClient.GetGroupsAsync().Result;

        foreach (var group in groups.GraphGroups)
        {
            LogGroup(group);
        }

        return groups;
    }

解决方案

There might be two problems with

API resource location {0} is not registered on {1}

1. With URL

I think it should be without default collection, so in your example

http://khanamar3:8080/tfs/

2. With TFS/API version (I had this problem myself)

2.1

First check the version of your TFS server in TFS Management for example

C:\Program Files\Microsoft Team Foundation Server 2018\Tools\TfsMgmt.exe

Once you know your TFS Server version you can see which API Version it supports

https://docs.microsoft.com/en-us/rest/api/azure/devops/?view=vsts-rest-tfs-4.1

For example TFS 2018 UPDATE 1 supports API version 4.0

2.2

Then check what API version is called by DLLs you use. I coudn't find this information on nuget site https://www.nuget.org/packages/Microsoft.TeamFoundationServer.Client/

UPDATE: You can check which dll version supports which TFS version here: https://docs.microsoft.com/en-us/azure/devops/integrate/concepts/dotnet-client-libraries?view=azure-devops

but as described here How to specify the API version? you can check what API version is passed by the method using ILSpy

Method in your case would be:

GetGroupsAsync

And you can check this using https://marketplace.visualstudio.com/items?itemName=SharpDevelopTeam.ILSpy

In my case it looked like this

So API from nuget Versioned 16.153.0 uses calls with 5.1.1

So in my case TFS 2018 UPDATE 1 did not supported API version 5.1.1, so I will need to downgrade nuget or upgrade TFS Server Version (or both)

这篇关于API资源位置未注册的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆