Team Foundation SDK for VS 2010

We have just published the first increment of the Team Foundation SDK for VS 2010. Several months ago, I commented on the negative trend we have seen for the TF SDK content, and I explained that we had started an effort to attempt to turn that around by taking a very different approach. We’re experimenting and we’ll watch feedback to see what works as we continue to build this content. There are two parts of that effort:

  1. I’ve rerwtitten the conceptual portion of the SDK to focus on getting you started by providing critical information and some sample code. For example, Create a Console Application that Connects to Team Foundation Server has a sample that connects to TFS and lists team project collections and team projects. The topic provides information that you probably will need to take the next step in your code: the interfaces & classes that you can obtain using GetServiceInstance<>()? I ignored conventions that sometimes made the old content more wordy than useful. The APIs aren’t broadly covered in this section of the SDK. Instead, the critical concepts are covered, and in some of those cases, I’ve referenced community content. The section on work item tracking is the most developed. I’ve replaced 30 small topics with 5 slgihgly longer topics. I’ve also included the samples inline so there’s nothing to download. Of course, new features like the extended query capabilities are covered. (Finding Bugs, Tasks and Other Types of Work Items by Using the Work Item Tracking Query Language and the Client Object Model). I also added a topic that talks about dealing with different types of work items. There’s still more to do for work item tracking, and the other areas are much less developed than this.
  2. The development team added comments to many of the public APIs, and we are now publishing the API reference content based on those comments, having done some editorial work. (See Team Foundation API Reference in Extending Team Foundation). We will invest some time in raising the quality of the most critical of these reference topics. We’ll watch the feedback on these topics to help us determine how to balance that effort with the effort to broaden the coverage to more APIs.

As I’ve said before, these changes are intended to address the feedback that we’ve recieved about the TF SDK. We’ll watch the feedback that you leave on this new content and adjust our plans accordingly. To leave feedback on a topic, do one of the following:

– In Lightweight view, scroll to the bottom of the page, and the click Feedback. The first two questions are about the help experience. Use the third question to rate the topic (1 is bad, 5 is good), and include your comments in Tell us More.

– In Classic view, click “Click to  Rate and Give Feedback”, rate the topic (1 star is bad, 5 stars is good) and add your comments there.

– You can also come back to this blog post and leave comments about the new TF SDK content here.

Let us know what is working and what isn’t using one of those methods. We’re watching for it, and it’ll help shape what we do in the upcoming releases. If you leave your email in the comment, we’ll follow up with you to clarify any questions we have about your comments.


Comments (23)

  1. Hi Allen,

    Can we get the API documentation for the Microsoft.TeamFoundation.Build.Workflow.dll assembly added to this documentation as well?  This assembly contains all of the out of the box workflow activities that are used in Team Build and desperately need some documentation for it even if it's just API docs for right now.


  2. Ed, I've added this to our backlog. I'll update this thread as soon as I know when we'll be able to cover it.

  3. Buck Hodges says:

    Allen Clark has announced the publication of the first release of the TFS 2010 SDK .  This represents

  4. Team Foundation SDK for VS 2010 published

  5. tim says:

    is it me, or are those pages in japanese?

  6. Every month (more or less), the MSDN Library is updated with new topics, additions to existing topics

  7. Every month (more or less), the MSDN Library is updated with new topics, additions to existing topics

  8. Tim,

    I haven't heard that from anyone else. The topics I point to haven't been localized yet, so it sounds like some settings. Are you seeing that only on the topics on MSDN that I point to? What about other topics on MSDN, and pages outside MSDN?


  9. Every month (more or less), the MSDN Library is updated with new topics, additions to existing topics

  10. Every month (more or less), the MSDN Library is updated with new topics, additions to existing topics

  11. Nick Tulett says:

    Is there any way to use Difference to compare files that aren't both in source control?

    e.g. I run a test and want to compare the current result (Unicode text) to the source controlled master.

    Ideally I'd like to use something like the Difference web service on the TFS server to embed the results in a web page.

    Wishful thinking?

  12. DalidReid says:

    can we please get a dcoumented SDK topic for creating an FTP Activity in Team Build 2010

  13. tim says:

    weird…i found the link to switch it to English, but that was the only msdn which was in japanese….

    Anyway – I agree with Ed – documentation on Microsoft.TeamFoundation.Build.Workflow would be nice!

  14. Nick, I think you should be able to do that, but I don't know the details at this point. I'm going to put this on my backlog. I'll post back here when I have more details.

  15. Dalid, that's an interesting idea for a sample. Adding this one to the backlog also.

  16. BHardister says:

    Allen, I have been working through the Team Build Customization exercises by Ewald Hoffman ( Excercise 4 involves creating a new activity, which involves adding the TF SDK references. Here's my feedback: why are the TF assemblies in different directories, some on V2.0, some in PrivateAssemblies? i think it would be more user friendly to have them all in one place. That said, I LOVE the WF 4.0 for Team Build.

  17. Bob, I haven't been able to track down a good reason for some assemblies being delivered in the PrivateAssemblies folder. I've passed along your feedack, though. It makes sense.

  18. Ed, we're planning to cover customizing builds and include reference info on the build activities, but not in the SDK. You should see the beginnings of this content toward the end of the summer, or maybe later, depending on whether some other work gets a higher priority.

  19. Ed, the build server object model (which includes the workflow namepsace) has made it to the top of the backlog, so we'll cover that in the next publication of the Team Foundation SDK. We're also hoping to deliver an activities reference (not part of the SDK) around the same time.

  20. Nick Tulett says:

    The solution I (eventually) came up with for comparing current results (not in source control) with master results (in source control) and displaying in a bespoke web page was:

    As an asmx Web Service:

    Connect to the workspace on the web server using a TFS-specific domain account with a non-expiring password.

    Check out the master result on the web server.

    Copy the current result from the test machine to the web server's TFS workspace (but renamed to match the master result).

    Shelve it (so it's in source control but not overwriting the master result) into shelveset compShelf.

    Undo the checkout on the web server.

    [ Do a compare on the TFS web portal to get the URL for comparing latest version to a shelveset version:

    It will be something like http://tfsserver:8080/tfs/web/diff.aspx?blahblahblah ]

    Stream this URL into a string via WebClient and return this string via an ajax call to the bespoke web page.

  21. The Build Workflow APIs will be published in Dec.

  22. Martin Russ says:

    Where is the download for TFS 2010 SDK?  I can't find a link anywhere.

  23. The SDK is published in MSDN online, here:…/bb130146.aspx. There are also several downloads posted on the Code Gallery, here: You'll find reference to those in the topics that we've published on MSDN, too.