Is there a server side API for Team Foundation Server?
It would seem there is precious little documentation on programming against a TFS 2010 instance. What bits I have found, have next to nothing in the case of documentation beyond barebones listing of client access classes and their members, most likely autogenerated from the code comments.
As I'm interested in building a silverlight client against TFS. I know that a Silverlight client will not be able to make a reference to the TFS Cient assemblies. I will need access the TFS from my own server side wrapper. Ideally the s开发者_运维问答ilverlight app will talk to my server (mainly for work items) and my server will in turn talk to the TFS server for the goods.
Where is the doumentation (if any) for this kind of TFS integration?
TFS 2010 has a server API for version control and build automation, but not for work item tracking (you'll need to use the client API for that). As Robaticus pointed out, you won't be able to link to any of the TFS assemblies from Silverlight as they don't target that framework. Alternatively, you could target the web services directly, but that can get pretty hairy depending on what you're trying to do.
Silverlight isn't going to be able to reference the TFS namespaces, as the assemblies aren't been compiled for Silverlight. That means you're going to need a services layer that your SL app talks to via contracts that mimic the built-in TFS WorkItem classes.
The interface for dealing with TFS and the WorkItemStore is pretty stratightforward, without a whole lot of documentation needed. Essentially, create your TeamFoundationServer class, then use it as a factory to get to your WorkItemStore. From your WorkItemStore, you use WIQL to query for work items.
(WIQL reference here, for instance): http://msdn.microsoft.com/en-us/library/bb130198.aspx
There are plenty of good reference applications to be found on CodePlex.
精彩评论