I'm trying to connect to TFS 2010 using TFS SDK, but can't get VersionControlServer service.
var servers = RegisteredTfsConnections.GetConfigurationServers(); // ok
then
var tfs = new TfsConfigurationServer(servers.First().Uri, CredentialCache.DefaultNetworkCredentials);
// or
var tfs = new TfsConfigurationServer(servers.First());
both always returns null:
var vc = (VersionControlServer)tfs.GetService<VersionControlServer>(); // null!
What should I do?
You don't want the configuration server, you want the project collection. The version control service is scoped to a team project collection. For example:
var projectCollection =
TfsTeamProjectCollectionFactory.GetTeamProjectCollection(registeredProjectCollection);
var versionControl = projectCollection.GetService<VersionControlServer>();
See also: Connect to a Project Collection