我正在使用下面的代码,
WorkspaceInfo workspaceInfo = Workstation.Current.GetLocalWorkspaceInfo("$/UKNML1234_1");
Uri serverUri = workspaceInfo.ServerUri;
TfsTeamProjectCollection server = new TfsTeamProjectCollection(serverUri);
var versionControlServer = server.GetService<VersionControlServer>();
Workspace WS = workspaceInfo.GetWorkspace(versionControlServer.AuthorizedUser);
但我收到错误
cannot convert from ‘string’ to ‘Microsoft.TeamFoundation.Client.TfsTeamProjectCollection
知道如何解决这个问题吗?
编辑:错误发生在第五行
versionControlServer.AuthorizedUser
在您的代码中,错误是由于将错误类型的参数传递给
GetWorkspace
方法引起的。具体来说,您传递的是 versionControlServer.AuthorizedUser
(代表授权用户名称的字符串),而不是所需的 VersionControlServer
对象。为了解决这个问题,我修改了代码,将 versionControlServer
对象直接传递给 GetWorkspace
方法。试试这个
WorkspaceInfo workspaceInfo = Workstation.Current.GetLocalWorkspaceInfo("$/UKNML1234_1");
Uri serverUri = workspaceInfo.ServerUri;
TfsTeamProjectCollection server = new TfsTeamProjectCollection(serverUri);
server.EnsureAuthenticated(); // Ensure the server is authenticated
var versionControlServer = server.GetService<VersionControlServer>();
// Use the versionControlServer object directly, not the AuthorizedUser property
Workspace WS = workspaceInfo.GetWorkspace(versionControlServer);