tags:

views:

134

answers:

2

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 silverlight 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?

A: 

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.

Robaticus
@Robaticus: please always supply current MSDN links. If a reader wants to read an earlier version, he can choose that himself.
John Saunders
Doh! Sorry, must've had that older link cached. Had I had the right one, I would've noticed that he had already posted it in his question. Serves me right for trying to be technical on a Saturday.
Robaticus
+1  A: 

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.

Jim Lamb
In intention is for the silverlight app to talk back to its server via WCF which would in turn do the WorkItem CRUD on the TFS server. My concern is that on the surface it appears that the TFS client api for work items may not be suitable for server side work. (are they thread safe? is there some sort of connection caching, etc, etc)
Ralph Shillington