<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.microsoft.co.il/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Shai Raiten&amp;#39;s Blog : TFS 2010, TECH</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/TECH/default.aspx</link><description>Tags: TFS 2010, TECH</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><item><title>Getting Started With Git-TF Tool</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2012/12/31/getting-started-with-git-tf-tool.aspx</link><pubDate>Mon, 31 Dec 2012 11:12:17 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:1613063</guid><dc:creator>shair</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=1613063</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2012/12/31/getting-started-with-git-tf-tool.aspx#comments</comments><description>&lt;div class="wlWriterHeaderFooter" style="float:none;margin:0px;padding:4px 0px 4px 0px;"&gt;&lt;iframe src="http://www.facebook.com/widgets/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2012/12/31/getting-started-with-git-tf-tool.aspx" scrolling="no" frameborder="0" style="border:none;width:450px;height:80px;"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Git-TF &lt;/strong&gt;tool release by Microsoft allowing developers to work locally using Git repository without any connection to TFS, if you wanted to work on your files locally (In case you don’t have internet connection) you had reopen the solution and work offline. TFS 2012 comes with new feature called – Local Workspace allowing developers to work locally on their files but without tracking the changes history – here comes Git-TF tool.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/bharry/archive/2012/08/13/announcing-git-integration-with-tfs.aspx" target="_blank"&gt;Brian Harry’s Blog&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Distributed Version Control (DVCS) has a growing following. It enables a set of workflows that can be very handy and Git is an increasingly popular DVCS solution.&amp;#160; Today, we are announcing Git-tf, a solution that enables you to work locally with a Git repo – edit, commit, revert, branch, merge, etc.&amp;#160; and then “sync up” with a central TFS repository.&amp;#160; In this way, you can have the best of both DVCS and TFS.&lt;/p&gt; &lt;/blockquote&gt;  &lt;h2&gt;Getting Started with Git-TF Tool&lt;/h2&gt;  &lt;h3&gt;Prerequisites&lt;/h3&gt;  &lt;ol&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=30474" target="_blank"&gt;Download Microsoft Git-TF for Visual Studio Team Foundation Server 2012&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Extract the zip content to &lt;strong&gt;C:\git-tf &lt;/strong&gt;(or any other place) &lt;/li&gt;    &lt;li&gt;Add the path where you extracted Git-TF (i.e. C:\git-tf) to your PATH environment variable.      &lt;blockquote&gt;       &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_16543D39.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_6A079087.png" width="727" height="450" /&gt;&lt;/a&gt;           &lt;br /&gt;          &lt;br /&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_56B6B41B.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_5499B552.png" width="453" height="505" /&gt;&lt;/a&gt;           &lt;br /&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/SNAGHTML3c733c_4D2DCFD8.png"&gt;           &lt;br /&gt;&lt;img title="SNAGHTML3c733c" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="SNAGHTML3c733c" src="http://blogs.microsoft.co.il/blogs/shair/SNAGHTML3c733c_thumb_6478D449.png" width="696" height="442" /&gt;&lt;/a&gt;&lt;/p&gt;     &lt;/blockquote&gt;   &lt;/li&gt;    &lt;li&gt;Download Java from &lt;a href="http://www.java.com/"&gt;http://www.java.com&lt;/a&gt; and add the Java path to your PATH environment variable.&amp;#160; (Step 2)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://git-scm.com/download/win" target="_blank"&gt;Download Git for Windows&lt;/a&gt;, and install it.&lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;Setup Git User Information&lt;/h4&gt;  &lt;ol&gt;   &lt;li&gt;Open PowerShell and execute the following commands:&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;PS C:\&amp;gt; &lt;u&gt;git&lt;/u&gt; &lt;strong&gt;config &lt;/strong&gt;--global user.email &amp;quot;shai.raiten[at]mail.com&amp;quot;     &lt;br /&gt;PS C:\&amp;gt; &lt;u&gt;git&lt;/u&gt; &lt;strong&gt;config&lt;/strong&gt; --global user.name &amp;quot;Shai Raiten&amp;quot;&lt;/p&gt;  &lt;h4&gt;TFS Source Control&lt;/h4&gt;  &lt;p&gt;I’ve create new Team Project called – Agile, and added new console application under Main folder.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_61EFA28B.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_3970C077.png" width="900" height="332" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The first thing before we can start using Git-TF tool is initializes a new git repo from an existing path in a TFS server using the &lt;strong&gt;clone &lt;/strong&gt;command.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;u&gt;&lt;strong&gt;Run:&lt;/strong&gt;&lt;/u&gt; &lt;u&gt;git-tf&lt;/u&gt; &lt;strong&gt;clone&lt;/strong&gt; &lt;a href="http://TFSServerName:8080/tfs"&gt;http://TFSServerName:8080/tfs&lt;/a&gt; &amp;quot;$/Agile/Main”&lt;/p&gt;    &lt;p&gt;&lt;u&gt;&lt;strong&gt;Result:&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;    &lt;p&gt;PS C:\Users\Shai\Dev&amp;gt; git-tf clone &lt;a href="http://lucy:8080/tfs"&gt;http://lucy:8080/tfs&lt;/a&gt; &amp;quot;$/Agile/Main&amp;quot;       &lt;br /&gt;Connecting to TFS...       &lt;br /&gt;Cloning $/Agile/Main into C:\Users\Shai\Dev\Main: 100%, done.       &lt;br /&gt;Cloned changeset 19 as 6195f2e       &lt;br /&gt;PS C:\Users\Shai\Dev&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Change some files under your new Git repository.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_0B36C4BD.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_7C1FE5E2.png" width="398" height="224" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I’ve also create new file (Program – Duplicate.cs)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_21A96344.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_4732E0A5.png" width="694" height="271" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;To apply new change we’ll use the &lt;strong&gt;commit &lt;/strong&gt;command:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;Run&lt;/strong&gt;: &lt;u&gt;git&lt;/u&gt; &lt;strong&gt;commit&lt;/strong&gt; -a -m &amp;quot;Add new file and new comment...&amp;quot;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;:&lt;/p&gt;    &lt;p&gt;PS C:\Users\Shai\Main&amp;gt; git commit -a -m &amp;quot;Add new file and new comment...&amp;quot;      &lt;br /&gt;[master 2feccf1] Add new file and new comment...       &lt;br /&gt;&lt;font style="background-color:#ffff00;"&gt;1 file changed, 1 insertion(+)&lt;/font&gt;       &lt;br /&gt;PS C:\Users\Shai\Main&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now, let’s make things more complicated, I’ve checked in new change from TFS (Adding new comment)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_30245F69.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_0EC4B9CD.png" width="464" height="341" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Before you checked in your local git repository changes to TFS you want to fetches changes made in TFS as a new commit in Git, and merges the commit with the latest commit in the current branch.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;Run&lt;/strong&gt;: &lt;u&gt;git-tf&lt;/u&gt; pull –rebase&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;:&lt;/p&gt;    &lt;p&gt;PS C:\Users\Shai\Main&amp;gt; git-tf pull --rebase      &lt;br /&gt;Connecting to TFS...       &lt;br /&gt;jgit : Obtaining commits that need to be cherry-picked       &lt;br /&gt;jgit : Rewinding to commit Add new Comment - TFS       &lt;br /&gt;jgit : Applying Add new file and new comment...       &lt;br /&gt;Fetching and merging changes in $/Agile/Main at latest changeset: 100%, done.       &lt;br /&gt;&lt;font style="background-color:#ffff00;"&gt;All files were fetched to commit 1f59bb6. The rebase operation was stopped, please fix the issues and run &amp;quot;git rebase --        &lt;br /&gt;&lt;/font&gt;&lt;font style="background-color:#ffff00;"&gt;continue&amp;quot; to complete the operation.&lt;/font&gt;       &lt;br /&gt;PS C:\Users\Shai\Main&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;We can see we have a conflict with TFS, if you open the the conflicted file you’ll see TFS and Git changes separated by OURS and THIERS comments.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_5AB01A79.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_2B7E2EE2.png" width="465" height="356" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Modify the file to resolve the conflict, and run &lt;font style="background-color:#ffff00;"&gt;git rebase –&lt;/font&gt;&lt;font style="background-color:#ffff00;"&gt;continue &lt;/font&gt;&lt;font&gt;command to fix the conflict.&lt;/font&gt;&lt;font style="background-color:#ffff00;"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_7E88CC06.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_086DBD72.png" width="467" height="315" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After we make sure there is no more conflict we can check in the Git repository changes to TFS by running the following command:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;Run&lt;/strong&gt;: &lt;u&gt;git-tf&lt;/u&gt; &lt;strong&gt;checkin&lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;:&lt;/p&gt;    &lt;p&gt;PS C:\Users\Shai\main&amp;gt; git-tf checkin      &lt;br /&gt;Connecting to TFS...       &lt;br /&gt;Checking in to $/Agile/Main: 100%, done.       &lt;br /&gt;Checked commit de1ca4c in as changeset 21       &lt;br /&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now we can see Git changes in TFS Source Control.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_7B936753.png"&gt;&lt;img title="image" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_3A18B4FA.png" width="480" height="460" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Enjoy.&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=1613063" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Source+Control/default.aspx">Source Control</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+11/default.aspx">Visual Studio 11</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2012/default.aspx">TFS 2012</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2012/default.aspx">Visual Studio 2012</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Git/default.aspx">Git</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/PowerShell/default.aspx">PowerShell</category></item><item><title>Quality Center Migration To TFS 2012 RC</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2012/07/10/quality-center-migration-to-tfs-2012-rc.aspx</link><pubDate>Tue, 10 Jul 2012 17:00:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:1151390</guid><dc:creator>shair</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=1151390</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2012/07/10/quality-center-migration-to-tfs-2012-rc.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://blogs.microsoft.co.il/blogs/shair/archive/2012/07/10/quality-center-migration-to-tfs-2012-rc.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;WIDTH:100px;HEIGHT:21px;OVERFLOW:hidden;BORDER-TOP:medium none;BORDER-RIGHT:medium none;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2012/07/10/quality-center-migration-to-tfs-2012-rc.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" frameborder="0"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;As Sela Group continues to move hundreds of customers from Quality Center to TFS we have &lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_3FFB50C9.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;float:right;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" align="right" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_46EADD81.png" width="146" height="209" /&gt;&lt;/a&gt;upgrade our migration tool called – &lt;a href="http://www.selagroup.com/Scrat" target="_blank"&gt;Scrat&lt;/a&gt; to support migration to TFS 2012 RC.&lt;/p&gt;  &lt;p&gt;The migration process is Easy, Fast and doesn&amp;#39;t required any special customization it’s just a simple wizard application that will allow you to migrate everything from Quality Center to TFS.&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Requirements, Bugs, Test Cases, Attachments, Links between items and more.&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;Just &lt;a href="http://www.selagroup.com/Download" target="_blank"&gt;download the trial version&lt;/a&gt; and follow my steps:&lt;/p&gt;    &lt;h3&gt;Step 1: Define Migration Plan&lt;/h3&gt;  &lt;p&gt;After installing Scrat the first page will ask you for two things, a configuration file that will save all completed items and migration settings and the second is defining what items would you like to migrate from Quality Center to TFS (Requirements, Bugs and Test Cases). &lt;/p&gt;  &lt;p&gt;The configuration file will also allow you to repeat the migration process for &lt;strong&gt;Failed&lt;/strong&gt; items and will skip the work items that previously migrate successfully.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_39A4546E.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_21BD6D48.png" width="744" height="559" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 2: Connecting Quality Center and TFS&lt;/h3&gt;  &lt;p&gt;The connections page will ask you to connect to a specific Team Project under TFS 2010 or 2012 and connect to specific Project in Quality Center.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_4C492858.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_29A4E9DD.png" width="745" height="560" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 3: User Mapping&lt;/h3&gt;  &lt;p&gt;Quality Center allow users to work without LDAP users this means that we need to create a mapping between Quality Center users to TFS Users, you will use this page to define which user from Quality Center will be translate to LDAP user in TFS.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_1F9048B2.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_3CB5F0BC.png" width="747" height="561" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 4: Area Mapping&lt;/h3&gt;  &lt;p&gt;Area Mapping is one of the important steps in Scrat, Areas will allow you to keep Quality Center folders hierarchy as Areas in TFS.&lt;/p&gt;  &lt;p&gt;At the picture below you can see Scrat presenting the folders hierarchy, you can also modify and add new values before creating those areas in TFS. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_32A14F91.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_60EAAF71.png" width="752" height="400" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After Scrat will finish Area creation you will see the same folders hierarchy in TFS but as Areas.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_5B6C1900.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_5F29BDD0.png" width="326" height="604" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 5: Fields Mapping&lt;/h3&gt;  &lt;p&gt;In this steps you’ll map Quality Center fields to TFS Fields, this page will show also Customize fields in Quality Center and TFS.&lt;/p&gt;  &lt;p&gt;Fields that you’ll not choose will not be copied during the migration.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_68364951.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_1A4D73CF.png" width="789" height="593" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 6: Data Mapping&lt;/h3&gt;  &lt;p&gt;After you choose fields for the migration you might have to define new values for those fields, it’s more than possible that the field values will be different from Quality Center and TFS. &lt;/p&gt;  &lt;p&gt;You can also prepare for the migration by defining the proper values and fields before you start migrating.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_56498FB7.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_138A447F.png" width="784" height="589" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 7: State Mapping&lt;/h3&gt;  &lt;p&gt;Just before you’ll start the migration we need to define one more thing, the States.&lt;/p&gt;  &lt;p&gt;As you know TFS doesn&amp;#39;t allow you to open Work Item and change the State field to any field that you like, you have to save the work item and than change the state again, furthermore State field in TFS works on Work Flow mechanism that force the user to work based on the state flow.&lt;/p&gt;  &lt;p&gt;This means that we also need to define the flow for each state from Quality Center.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_3A94DDF4.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_17F09F79.png" width="780" height="586" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 8: Migration&lt;/h3&gt;  &lt;p&gt;In this page all you need to to is click “Start” to begin the migration, but you can also choose to migrate based on a specific filter, expend the advanced option and choose as many fields as you like to help you filtering the items for the migration.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_0D6FCB59.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_7FBD0F50.png" width="776" height="583" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When the migration is completed you can see those items in TFS:   &lt;br /&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_63CBDA58.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_3AE0C54F.png" width="779" height="588" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 9: Test Suites Hierarchy – Just for Test Cases&lt;/h3&gt;  &lt;p&gt;The migration process is the same for all items except Test Case, there you will have additional Page allowing you to build the &lt;strong&gt;Test Suites hierarchy &lt;/strong&gt;for Microsoft Test Manager.&lt;/p&gt;  &lt;p&gt;First you need to create a plan or select an existing one, this will create new Test Plan in Microsoft Test Manager.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_1E172A6D.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_2C922692.png" width="776" height="300" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Then select the desire Test Suites to create(you don’t need to create all just those you want) and click start.&lt;/p&gt;          &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_7EC45DCC.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_5C201F51.png" width="782" height="591" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After the process is done you can enter Microsoft Test Manager and you’ll see the same Suites hierarchy as in Quality Center, and each suite has his Test Cases assigned to it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_29F8CF07.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_35AE1639.png" width="780" height="431" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Test Case after the migration:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_045F2BD9.png"&gt;&lt;img title="image" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_5454DA57.png" width="773" height="562" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Enjoy.&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=1151390" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ITPRO/default.aspx">ITPRO</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Questions/default.aspx">Questions</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/QC/default.aspx">QC</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/How+To/default.aspx">How To</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Migration/default.aspx">Migration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Quality+Center+2+Team+System+2010/default.aspx">Quality Center 2 Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Scrat/default.aspx">Scrat</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/MTM+11/default.aspx">MTM 11</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2012/default.aspx">Visual Studio 2012</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Microsoft+Test+Manager+2012/default.aspx">Microsoft Test Manager 2012</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/MTM+12/default.aspx">MTM 12</category></item><item><title>The Git Hole</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/25/the-git-hole.aspx</link><pubDate>Wed, 25 Jan 2012 14:31:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:997006</guid><dc:creator>shair</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=997006</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/25/the-git-hole.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/25/the-git-hole.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;WIDTH:100px;HEIGHT:21px;OVERFLOW:hidden;BORDER-TOP:medium none;BORDER-RIGHT:medium none;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/25/the-git-hole.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" frameborder="0"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;I consider myself a calm person with plenty of tolerance, I believe in productive discussion and love it – Part of my job as a consultant is to talk with Teams and explain them why you should choose a specific product over another, in 99.9% of those meetings there is one guy that don’t like the change (No One Like Changes) and you need in a calm way to explain and show him the benefits of the new tool – Forcing someone to do something is never a good thing.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.fwb21.com/wp-content/uploads/2011/08/change-1.jpg" width="231" height="258" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;But sometimes there is no wining side in a discussion, you might say discussion are not about winning is about &lt;u&gt;Accepting&lt;/u&gt; and &lt;u&gt;Understanding,&lt;/u&gt; but Imagine yourself this scenario - You are a religious man, how about a discussion with a non-religious about “Does God Exists”?&lt;/p&gt;
&lt;p&gt;You can throw billion argumentation&amp;#39;s but nothing will matter because in this discussion there is not &lt;strong&gt;Logic&lt;/strong&gt; but &lt;strong&gt;Faith&lt;/strong&gt; and &lt;strong&gt;Emotions&lt;/strong&gt;, so you can spend hours but in the end the non-religious will not believe and the religious will.&lt;/p&gt;
&lt;p&gt;&lt;img style="DISPLAY:inline;MARGIN-LEFT:0px;MARGIN-RIGHT:0px;" src="http://www.stuartduncan.name/wp-content/uploads/2011/09/emotions.jpg" width="144" height="145" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Even when you talk about Technology there is emotions if you like it or not – If you not believe me you should read some theory&amp;#39;s from &lt;a href="http://en.wikipedia.org/wiki/Lawrence_Kohlberg" target="_blank"&gt;Lawrence Kohlberg&lt;/a&gt;,&amp;nbsp; &lt;a href="http://en.wikipedia.org/wiki/Carol_Gilligan" target="_blank"&gt;Carol Gilligan&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Sub_judice" target="_blank"&gt;Sub Judice&lt;/a&gt;&lt;a href="http://en.wikipedia.org/wiki/Sub_judice" target="_blank"&gt;, (Latin for &amp;quot;under judgment&amp;quot;)&lt;/a&gt;, I hope in this discussion you’ll understand you are not the first and for sure not the last how think he can control his emotions when you make a choice.&lt;/p&gt;
&lt;p&gt;So why I told you all about that? &lt;strong&gt;Lately I’ve being asked about why TFS and Not Git?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;First I think Git is a wonderful &lt;u&gt;version control system&lt;/u&gt; and I even use it for several projects, I use SVN and several other Open Source Version Control Systems.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.somethingon.com/media/theme/soorange/cgpeople/changes400x300.jpg" width="226" height="170" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;The reason sometimes I’m using other systems than TFS, is for specific projects: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Project I do by myself and I don’t need work assignment or project management.&lt;/li&gt;
&lt;li&gt;Projects that doesn’t have Testers, Product Manager or anyone else besides Developers.&lt;/li&gt;
&lt;li&gt;Projects that doesn&amp;#39;t care about team collaboration and think that Email is a great solution for tracking the team.&lt;/li&gt;
&lt;li&gt;Project that doesn&amp;#39;t have the money to buy TFS (&lt;a href="https://www.dreamspark.com/default.aspx" target="_blank"&gt;Dream Spark&lt;/a&gt;) &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;The question itself implies that the person didn’t understand what is TFS, and just think about saving his praised code. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.software-powertools.com/tfs-power-tools1.html"&gt;&lt;strong&gt;Team Foundation Server &lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;– This is a suite of development tools all within a single platform &lt;br /&gt;&lt;/strong&gt;The idea of one platform for the entire team is brilliant. Microsoft created tools for each individual position on the team; there are tools for Requirements Management, design tools for Architects, Developer tools and of course testing tools ranging from manual test to automation and load testing. All is this is now under one platform. When the entire team works on the same platform the collaboration and integration become easy and fluent, collecting data to generate reports no longer needs to take a lot of time. The team’s efforts are now integrated as part of the platform. Synchronizing between different tools is no longer necessary because all are working together in one place.&lt;/p&gt;
&lt;p&gt;So after I explain what is TFS the person told me –&amp;gt; but TFS doesn’t have &lt;strong&gt;distributed version control.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;SO WHAT? &lt;/u&gt;&lt;/strong&gt;Git doesn’t have Bug Management, Load Testing, UML Designer, Build Machine and a lot more. It’s not all about &lt;u&gt;&lt;strong&gt;Code!&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;So developers think that everything about the Product is up to them – &lt;strong&gt;and they are wrong!&lt;/strong&gt; the product is something that everyone is part of, the Project Manager, the Business Analysis, the Developers, Tester and more.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Sometimes one less feature is best for the Team than one extra feature just for you!&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now, let’s go back to the &lt;strong&gt;discussion, &lt;/strong&gt;even after I explain TFS the person still want Git (although his company bought TFS) and in that point I understand that this is the same discussion as “Does God Exists” because the person has &lt;strong&gt;HMS &lt;/strong&gt;(Hate Microsoft Syndrome) and this is what he believes.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://chetangole.com/blog/wp-content/uploads/2008/09/we-hate-microsoft-google-chrome.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Is there a cure? I really don’t know. But I do know that &lt;strong&gt;Emotions&lt;/strong&gt; overcome common sense and facts.&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;strong&gt;I Love Microsoft and I really Love TFS&lt;/strong&gt;&lt;/u&gt;, but TFS is not the only tool at the market today that gives teams the ability to work together under a single platform, there is IBM Jazz or HP ALM Solution, but with not doubt TFS is mature and most popular ALM tool today and I will continue recommend TFS and I’ll not surrender the &lt;strong&gt;HMS!!!&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;God, give me the strength to accept the things I cannot change, &lt;br /&gt;Courage to change the things I can, &lt;br /&gt;and the Wisdom to distinguish the one from the other.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;/div&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=997006" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+Build/default.aspx">Team Build</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/WorkItem+Tracking/default.aspx">WorkItem Tracking</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Work+Items/default.aspx">Work Items</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Testing/default.aspx">Testing</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Process+Template/default.aspx">Process Template</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Reports/default.aspx">Reports</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Source+Control/default.aspx">Source Control</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ITPRO/default.aspx">ITPRO</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Questions/default.aspx">Questions</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Scrum/default.aspx">Scrum</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Scrum+3.0/default.aspx">Scrum 3.0</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Modeling/default.aspx">Modeling</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ALM/default.aspx">ALM</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Agile/default.aspx">Agile</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+11/default.aspx">Visual Studio 11</category></item><item><title>Team Foundation Backup Plan Not Working in Administration Console</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/17/team-foundation-backup-plan-not-working-in-administration-console.aspx</link><pubDate>Tue, 17 Jan 2012 16:42:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:990351</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=990351</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/17/team-foundation-backup-plan-not-working-in-administration-console.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, 
Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/17/team-foundation-backup-plan-not-working-in-administration-console.a"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, 
Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;WIDTH:100px;HEIGHT:21px;OVERFLOW:hidden;BORDER-TOP:medium none;BORDER-RIGHT:medium none;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/17/team-foundation-backup-plan-not-working-in-administration-console.a&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" frameborder="0"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;Today I came to a customer for consulting and the customer told me that there is no Backups for TFS. So right away I told him this is very important and let’s create a Backup Plan for TFS.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/archive/2010/09/15/how-to-create-tfs-2010-backup-plan.aspx"&gt;How To: Create TFS 2010 Backup Plan&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Problem&lt;/h3&gt;
&lt;p&gt;So I’ve download TFS 2010 Power Tools, Install, Open TFS Administration Console, Click “Create Backup Plan” and &lt;u&gt;&lt;strong&gt;Nothing happens.&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_06A24D56.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-RIGHT-WIDTH:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_32066E50.png" width="650" height="265" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So I’ve started to investigate and saw some errors in TFS Event Log, of course I saw “Object reference not set to an instance of an object” and didn’t understand the problem.&lt;/p&gt;&lt;pre class="code"&gt;[Info&amp;nbsp;&amp;nbsp; @09:02:10.541] Process finished: fileName=C:\Program Files (x86)\Microsoft &lt;br /&gt;Team Foundation Server 2010 Power Tools\Team Foundation Server Backup Plan\&lt;br /&gt;AdminPTHelper.exe arguments= exitCode=0 in 2588 ms
&lt;br /&gt;[Error&amp;nbsp; @09:02:10.541] 
&lt;br /&gt;Exception Message: Object reference not set to an instance of an object. 
&lt;br /&gt;(type NullReferenceException)
&lt;p&gt;Exception Stack Trace:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.TeamFoundation.PowerTools.Admin.Models.
PageExternalDatabasesViewModel.FillList() at Microsoft.TeamFoundation.&lt;br /&gt;PowerTools.Admin.Models.
&lt;br /&gt;PageExternalDatabasesViewModel.PageExternalDatabasesViewModel_PropertyChanged
&lt;br /&gt;(Object sender, PropertyChangedEventArgs e)&amp;nbsp;&amp;nbsp; &lt;br /&gt;at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, 
&lt;br /&gt;PropertyChangedEventArgs e)&amp;nbsp;&amp;nbsp; at Microsoft.TeamFoundation.MVVM.&lt;br /&gt;NotifyPropertyChangedDispatcherObject.&lt;br /&gt;SetAndRaisePropertyChanged(Boolean&amp;amp; propertyDataField, Boolean value, String
&lt;br /&gt;propertyName)&amp;nbsp;&amp;nbsp; at Microsoft.TeamFoundation.PowerTools.Admin.Models.&lt;br /&gt;BaseWizardViewModel.
&lt;br /&gt;InitializePageInputs()&amp;nbsp;&amp;nbsp; at Microsoft.TeamFoundation.PowerTools.Admin.&lt;br /&gt;Wizards.WizardBackupPlan.Initialize() &lt;/p&gt;&lt;/pre&gt;
&lt;p&gt;So I went to try my luck with ProcMon and found the following command returning an error:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;C:\Program Files (x86)\Microsoft Team Foundation Server 2010 Power Tools\Team Foundation Server Backup Plan\AdminPTHelper.exe&amp;quot; SharePointInspection /method:FindLocalSharepointConfigDb /tfsApps:&lt;font style="BACKGROUND-COLOR:#ffff00;"&gt;http://172.21.11.51:17012&lt;/font&gt;/&lt;/p&gt;&lt;/blockquote&gt;
&lt;h3&gt;Solution&lt;/h3&gt;
&lt;p&gt;So Why the “Central Administration URL” is there? after a deeper drilldown I found some DNS errors,&amp;nbsp; So I went to SharePoint Web Application Settings and change the “Central Administration URL” to DNS name instead of IP Address and everything start working.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_36304615.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-BOTTOM:0px;BORDER-LEFT:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP:0px;BORDER-RIGHT:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_5EEBAB5E.png" width="733" height="517" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=990351" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/PowerTools/default.aspx">PowerTools</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ITPRO/default.aspx">ITPRO</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Questions/default.aspx">Questions</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/How+To/default.aspx">How To</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category></item><item><title>The Future of Testing: Quality Center vs. Team Foundation Server</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/05/the-future-of-testing-quality-center-vs-team-foundation-server.aspx</link><pubDate>Thu, 05 Jan 2012 05:12:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:979250</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=979250</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2012/01/05/the-future-of-testing-quality-center-vs-team-foundation-server.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://beta.blogs.microsoft.co.il/blogs/shair/archive/2012/01/05/the-future-of-testing-quality-center-vs-team-foundation-server.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://beta.blogs.microsoft.co.il/blogs/shair/archive/2012/01/05/the-future-of-testing-quality-center-vs-team-foundation-server.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;a href="http://blogs.microsoft.co.il/blogs/shair/Mission_Migration_Screen_1EBFD440.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;float:right;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="Mission_Migration_Screen" border="0" alt="Mission_Migration_Screen" align="right" src="http://blogs.microsoft.co.il/blogs/shair/Mission_Migration_Screen_thumb_3AFCF093.png" width="244" height="200" /&gt;&lt;/a&gt;  &lt;p&gt;Quality Center vs. TFS is a question I hear a lot, each customer that works with Quality Center has faced this question when the development team has decided to work with TFS or the Testers want features to help them improve their testing quality.&lt;/p&gt;  &lt;p&gt;Instead of talking about that subject only with my customers I decided to write something on that subject to help you understand the power of TFS for Testers, and how this platform will improve your Testing abilities with more advance features and align the Testers as part of the development Team.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;I have recently surpassed a milestone of helping over 100 companies migrate and implement &lt;/em&gt;&lt;a href="http://www.software-powertools.com/tfs-power-tools1.html"&gt;&lt;em&gt;Team Foundation Server&lt;/em&gt;&lt;/a&gt;&lt;em&gt; to become the backbone of their Application Lifecycle Management.&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;Through this work, I have come to an analogy that “testing is like the nail holding a picture on the wall.”&amp;#160; It is this nail which prevents the picture from falling to the ground; however, it is the wall that holds the nail in place.&amp;#160; Some nails hold the picture up for years and some for only days; thus, the strength and composition of the wall becomes very important to the picture.&amp;#160; In this analogy, the picture is Development, Testing the nail and Tools determine the strength of the wall. &lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;We need a solid structure to hang all our work, which means our tools and process must be solid and complete.&amp;#160; Over the years, I have learned that a great development team needs exceptional testers, and exceptional testers need a very good tool to manage their work and relationship with their developers.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;&lt;a href="http://www.codeproject.com/KB/showcase/Quality-Center-vs-TFS.aspx" target="_blank"&gt;The Full Article&lt;/a&gt;&lt;/h3&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=979250" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Testing/default.aspx">Testing</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ITPRO/default.aspx">ITPRO</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Questions/default.aspx">Questions</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/QC/default.aspx">QC</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Microsoft+Test+Manager/default.aspx">Microsoft Test Manager</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Migration/default.aspx">Migration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Quality+Center+2+Team+System+2010/default.aspx">Quality Center 2 Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+11/default.aspx">TFS 11</category></item><item><title>TFS API Part 42 – Getting Started With Lab Management API</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/22/tfs-api-part-42-getting-started-with-lab-management-api.aspx</link><pubDate>Thu, 22 Dec 2011 17:12:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:965381</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=965381</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/22/tfs-api-part-42-getting-started-with-lab-management-api.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/22/tfs-api-part-42-getting-started-with-lab-management-api.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/22/tfs-api-part-42-getting-started-with-lab-management-api.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;I did some cool things lately with TFS Lab Management API, from connecting it to TFS Web Access and allow REST access to the lab (if you want to ask why – The customer is always right &lt;img style="border-bottom-style:none;border-left-style:none;border-top-style:none;border-right-style:none;" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.microsoft.co.il/blogs/shair/wlEmoticon-smile_6207A0F6.png" /&gt;).&lt;/p&gt;  &lt;p&gt;So this part of TFS API will deal with Lab Management API, although Lab Management API is not public I’ll show some cool things you can do but this will be under your own risk.&lt;/p&gt;  &lt;p&gt;Again, this is just the beginning of the Lab Management API, so let’s get started&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_35EAA405.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_1C52F10B.png" width="751" height="384" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/files/folders/957845/download.aspx" target="_blank"&gt;Download Demo Project&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 1: Located “&lt;strong&gt;Microsoft.TeamFoundation.Lab.Client.dll&lt;/strong&gt;” &lt;/h3&gt;  &lt;p&gt;This dll cannot be found under Public, Private or ReferenceAssemblies it can only be found under GAC, so navigate here - &lt;font size="2"&gt;C:\Windows\assembly\GAC_MSIL\Microsoft.TeamFoundation.Lab.Client\10.0.0.0__b03f5f7f11d50a3a\      &lt;br /&gt;Microsoft.TeamFoundation.Lab.Client.dll&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Add this dll as reference to your project.&lt;/font&gt;&lt;/p&gt;  &lt;h3&gt;Step 2: Connect TFS and Obtain LabService&lt;/h3&gt;  &lt;p&gt;After connecting to TFS you need to obtain the Lab Service at the same way we did for all other services under TFS.&lt;/p&gt;  &lt;p&gt;If created a combo box with all team project for later use.&lt;/p&gt;  &lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnConnectClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; tpp = &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectPicker&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectPickerMode&lt;/font&gt;&lt;/span&gt;.NoProject,&lt;span&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&amp;#160;&amp;#160; tpp.ShowDialog();&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (tpp.SelectedTeamProjectCollection == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160; _tfs = tpp.SelectedTeamProjectCollection;&lt;br /&gt;&amp;#160;&amp;#160; _lab = (&lt;span&gt;&lt;font color="#2b91af"&gt;LabService&lt;/font&gt;&lt;/span&gt;)_tfs.GetService(&lt;span&gt;&lt;font color="#0000ff"&gt;typeof&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;LabService&lt;/font&gt;&lt;/span&gt;));&lt;br /&gt;  &lt;br /&gt;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; store = (&lt;span&gt;&lt;font color="#2b91af"&gt;WorkItemStore&lt;/font&gt;&lt;/span&gt;)_tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;WorkItemStore&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt;&amp;#160;&amp;#160; listProjects.ItemsSource = store.Projects;&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;&lt;font size="3"&gt;Step 3: Get Collection Hosts and &lt;/font&gt;Library Share&lt;/h3&gt;

&lt;p&gt;Before we start dealing with Team Projects and their Lab Vm’s and templates the below code will show how to pull the Lab Management Hosts and Library Share from the TFS Collection.&lt;/p&gt;

&lt;p&gt;Using the Lab Service and a QuerySpec object (we’ll use those a lot), we need to call QueryTeamProjectCollectionHostGroups method (right now we don’t need to add anything to the Query).&lt;/p&gt;

&lt;pre class="code"&gt;&lt;font color="#008000"&gt;&lt;span&gt;&lt;font style="font-size:12pt;"&gt;//public class TeamProjectCollectionHostGroupQuerySpec&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&lt;br /&gt;&lt;span&gt;//{&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//&amp;#160; public TeamProjectCollectionHostGroupQuerySpec();&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//&amp;#160; public Uri Location { get; set; }&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//&amp;#160; public string Name { get; set; }&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//}&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;font style="font-size:12pt;"&gt;&lt;br /&gt;listHostGroups.ItemsSource = _lab.QueryTeamProjectCollectionHostGroups(&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectCollectionHostGroupQuerySpec&lt;/font&gt;&lt;/span&gt;());&lt;br /&gt; &lt;br /&gt;&lt;font color="#008000"&gt;&lt;span&gt;//public class TeamProjectCollectionLibraryShareQuerySpec&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//{&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//&amp;#160; public TeamProjectCollectionLibraryShareQuerySpec();&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//&amp;#160; public Uri Location { get; set; }&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//&amp;#160; public string Name { get; set; }&lt;/span&gt;&lt;br /&gt;&lt;span&gt;//}&lt;/span&gt;&lt;/font&gt;&lt;br /&gt;listLibraryShares.ItemsSource = _lab.&lt;br /&gt;          QueryTeamProjectCollectionLibraryShares(&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectCollectionLibraryShareQuerySpec&lt;/font&gt;&lt;/span&gt;());&lt;/font&gt;&lt;/pre&gt;

&lt;pre style="border-bottom-style:none;padding-bottom:0px;line-height:normal;background-color:transparent;border-left-style:none;padding-left:0px;padding-right:0px;border-top-style:none;border-right-style:none;padding-top:0px;" class="code"&gt;&lt;font size="3"&gt;&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 4: Get Lab Management Details For Team Project&lt;/h3&gt;

&lt;p&gt;Now, when you choose a Team Project we’ll call the GetProjectLabDetails method to extract all relevant lab information on that project.&lt;/p&gt;

&lt;p&gt;But first we’ll use the LabService.IsLabConfigured method to see if this project has any lab configurations, if it does then using the QuerySpec we can pull all Environments and Templates for that team project.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;void&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt; GetProjectLabDetails(&lt;span&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;/span&gt; projectName)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//Does this Team Project has Lab configure?&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (!_lab.IsLabConfigured(projectName)) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//Creating Query for lab environments under a specific project name.&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; labQuerySpec = &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;LabEnvironmentQuerySpec&lt;/font&gt;&lt;/span&gt;{Project = projectName};&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//public class LabEnvironmentQuerySpec&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//{&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//&amp;#160; public LabEnvironmentQuerySpec();&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//&amp;#160; public LabEnvironmentDisposition Disposition { get; set; }&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//&amp;#160; public Uri Location { get; set; }&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//&amp;#160; public string Project { get; set; }&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#008000"&gt;//}&lt;/font&gt;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; listEnvironments.ItemsSource =_lab.QueryLabEnvironments(labQuerySpec);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; listTemplates.ItemsSource = _lab.QueryLabTemplates(&lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;br /&gt;    &lt;span&gt;&lt;font color="#2b91af"&gt;LabTemplateQuerySpec&lt;/font&gt;&lt;/span&gt;() { Project = projectName });&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/files/folders/957845/download.aspx" target="_blank"&gt;Download Demo Project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enjoy.&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=965381" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+API/default.aspx">TFS API</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Lab+Management/default.aspx">Lab Management</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET+4/default.aspx">.NET 4</category></item><item><title>Validate Field Format in Work Items using MATCH Element</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/18/validate-field-format-in-work-items-using-match-element.aspx</link><pubDate>Sun, 18 Dec 2011 18:12:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:960985</guid><dc:creator>shair</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=960985</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/18/validate-field-format-in-work-items-using-match-element.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/18/validate-field-format-in-work-items-using-match-element.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/18/validate-field-format-in-work-items-using-match-element.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;Today I got a interesting questions from a customer – How I can force format to a version field?&lt;/p&gt;  &lt;p&gt;I said cool finally I can use the &lt;a href="http://msdn.microsoft.com/en-us/library/aa337608(v=VS.90).aspx" target="_blank"&gt;MATCH Element (Work Item Type Definition Schema)&lt;/a&gt; to set a regex for System.Title field, The MATCH rule &lt;u&gt;doesn&amp;#39;t support full regular expressions&lt;/u&gt;, but a simplified version.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&amp;lt;MATCH pattern=&amp;quot;pattern to match&amp;quot; for=&amp;quot;user name&amp;quot; not=&amp;quot;user name&amp;quot; /&amp;gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Enforces basic pattern matching for strings only. &amp;lt;pattern&amp;gt; should be replaced with the match pattern. Valid values are &amp;quot;A&amp;quot;, &amp;quot;N&amp;quot;, &amp;quot;X&amp;quot;, all other values are taken as literals. &lt;/p&gt;  &lt;p&gt;&amp;quot;A&amp;quot; represents an alpha character. &lt;/p&gt;  &lt;p&gt;&amp;quot;N&amp;quot; represents a numeric character. &lt;/p&gt;  &lt;p&gt;&amp;quot;X&amp;quot; represents either alpha or numeric. This is only supported for string type fields.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Examples:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Release Number&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;ANN.NN.NN&amp;#160;&amp;#160;&amp;#160; &lt;font color="#00ff00"&gt;&lt;strong&gt;Validates&lt;/strong&gt;&lt;/font&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; R01.03.04 &lt;u&gt;or&lt;/u&gt; V05.08.99&lt;/li&gt;      &lt;li&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#ff0000"&gt;&lt;strong&gt;Fails&lt;/strong&gt;&lt;/font&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 1.3.4 &lt;u&gt;or&lt;/u&gt; V5.8.99 or v1.3&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Some flexible id&amp;#160;&amp;#160; &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;XXX-XXX&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;font color="#00ff00"&gt;&lt;strong&gt;Validates&lt;/strong&gt;&lt;/font&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 001-abc or a00-b02&lt;/li&gt;      &lt;li&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;&lt;font color="#ff0000"&gt;Fails&lt;/font&gt;&lt;/strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 1-abc or 001.abc&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Priority&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;PN&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;&lt;font color="#00ff00"&gt;Validates&lt;/font&gt;&lt;/strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; P1 or P5 or P9&lt;/li&gt;      &lt;li&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;&lt;font color="#ff0000"&gt;Fails&lt;/font&gt;&lt;/strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 1 or P10&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;Enjoy&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=960985" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/WorkItem+Tracking/default.aspx">WorkItem Tracking</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Work+Items/default.aspx">Work Items</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/How+To/default.aspx">How To</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category></item><item><title>TFS API Part 41–Manage Groups and Members</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/07/tfs-api-part-41-manage-groups-and-members.aspx</link><pubDate>Wed, 07 Dec 2011 21:11:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:950429</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=950429</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/07/tfs-api-part-41-manage-groups-and-members.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/07/tfs-api-part-41-manage-groups-and-members.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/12/07/tfs-api-part-41-manage-groups-and-members.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;In the past I’ve showed some examples on how to work with TFS IGroupSecurityService for getting users list, but you can do much more, Create new Group, Add or Remove users from group etc…&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/archive/2010/06/16/tfs-api-part-25-get-tfs-user-list-mail-sid-account-domain-tfs-2010.aspx" target="_blank"&gt;TFS API Part 25: Get TFS User List (Mail Sid, Account, Domain) – TFS 2010&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/archive/2009/01/14/tfs-api-part-4-get-tfs-user-list-mail-sid-account-domain.aspx" target="_blank"&gt;TFS API Part 4: Get TFS User List (Mail, Sid, Account, Domain)&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_5ED63986.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_4A7073FB.png" width="743" height="392" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/files/folders/950425/download.aspx" target="_blank"&gt;Download Demo Project&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 1: Connect To TFS and Get All Users and Projects&lt;/h3&gt;  &lt;p&gt;As always we need to start with connecting to TFS, but here we’ll also obtain 2 important services for our demo &lt;strong&gt;IGroupSecurityService&lt;/strong&gt; and &lt;strong&gt;ICommonStructureService&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;Using &lt;u&gt;&lt;strong&gt;ICommonStructureService&lt;/strong&gt;&lt;/u&gt; we’ll be able to extract all Team Projects under the collection you choose, this is not the only way to do that.&lt;/p&gt;  &lt;p&gt;Using &lt;u&gt;&lt;strong&gt;IGroupSecurityService&lt;/strong&gt; &lt;/u&gt;will allow us to get all users under the “Project Collection Valid Users” category.     &lt;br /&gt;&lt;/p&gt;  &lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnConnectClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; tpp = &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectPicker&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectPickerMode&lt;/font&gt;&lt;/span&gt;.NoProject, &lt;span&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&amp;#160; tpp.ShowDialog();&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (tpp.SelectedTeamProjectCollection == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;  &lt;br /&gt;_tfs= tpp.SelectedTeamProjectCollection;&lt;br /&gt;_css= (&lt;span&gt;&lt;font color="#2b91af"&gt;ICommonStructureService&lt;/font&gt;&lt;/span&gt;)_tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;ICommonStructureService&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt;_gss= (&lt;span&gt;&lt;font color="#2b91af"&gt;IGroupSecurityService&lt;/font&gt;&lt;/span&gt;)_tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;IGroupSecurityService&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt; &lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; allSids = _gss.ReadIdentity(&lt;span&gt;&lt;font color="#2b91af"&gt;SearchFactor&lt;/font&gt;&lt;/span&gt;.AccountName, &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Project Collection Valid Users&amp;quot;&lt;/font&gt;&lt;/span&gt;, &lt;span&gt;&lt;font color="#2b91af"&gt;QueryMembership&lt;/font&gt;&lt;/span&gt;.Expanded);&lt;br /&gt; &lt;br /&gt;&amp;#160; listAllUsers.ItemsSource = _gss.ReadIdentities(&lt;span&gt;&lt;font color="#2b91af"&gt;SearchFactor&lt;/font&gt;&lt;/span&gt;.Sid,&lt;br /&gt;  allSids.Members, &lt;span&gt;&lt;font color="#2b91af"&gt;QueryMembership&lt;/font&gt;&lt;/span&gt;.None).Where(a=&amp;gt;a.Type == &lt;br /&gt;  &lt;span&gt;&lt;font color="#2b91af"&gt;IdentityType&lt;/font&gt;&lt;/span&gt;.WindowsUser || a.Type == &lt;span&gt;&lt;font color="#2b91af"&gt;IdentityType&lt;/font&gt;&lt;/span&gt;.WindowsGroup);&lt;br /&gt; &lt;br /&gt;&amp;#160; listProjects.ItemsSource = _css.ListAllProjects();&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 2: Get All Application Groups Under a Team Project&lt;/h3&gt;

&lt;p&gt;Once you choose a project we’ll use Project Uri and ListApplicationGroups method under &lt;strong&gt;&lt;u&gt;IGroupSecurityService&lt;/u&gt;&lt;/strong&gt; to get all Groups under that project.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; ListProjectsSelectionChanged(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender,&lt;br /&gt; &lt;span&gt;&lt;font color="#2b91af"&gt;SelectionChangedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (listProjects.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; project = listProjects.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;ProjectInfo&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; listGroups.ItemsSource = _gss.ListApplicationGroups(project.Uri);&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 3: Get Users From Specific Group&lt;/h3&gt;

&lt;p&gt;When you select a specific group we’ll use the group SID to get all members under that group.&lt;/p&gt;

&lt;p&gt;Make sure to change the SearchFactor to SID instead on AccountName, this will prevent getting users from another Project where the Group Name is not unique.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; ListGroupsSelectionChanged(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;br /&gt;&lt;span&gt;&lt;font color="#2b91af"&gt;SelectionChangedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (listGroups.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; group = listGroups.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;Identity&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; sids = _gss.ReadIdentity(&lt;span&gt;&lt;font color="#2b91af"&gt;SearchFactor&lt;/font&gt;&lt;/span&gt;.Sid, group.Sid, &lt;br /&gt;               &lt;span&gt;&lt;font color="#2b91af"&gt;QueryMembership&lt;/font&gt;&lt;/span&gt;.Expanded);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (sids == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt; || sids.Members.Length == 0)&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; listUsers.ItemsSource = &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; listUsers.ItemsSource = _gss.ReadIdentities(&lt;span&gt;&lt;font color="#2b91af"&gt;SearchFactor&lt;/font&gt;&lt;/span&gt;.Sid, &lt;br /&gt;                                 sids.Members, &lt;span&gt;&lt;font color="#2b91af"&gt;QueryMembership&lt;/font&gt;&lt;/span&gt;.None);&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 4: Add New Application Group&lt;/h3&gt;

&lt;p&gt;This part is very simple, you just need to obtain the Project Uri and call &lt;strong&gt;CreateApplicationGroup&lt;/strong&gt; under &lt;strong&gt;&lt;u&gt;IGroupSecurityService&lt;/u&gt;&lt;/strong&gt; with the Project Uri and the new Group Name.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnAddGroupClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (&lt;span&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;/span&gt;.IsNullOrEmpty(txtGroupName.Text) || &lt;br /&gt;               listProjects.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; project = listProjects.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;ProjectInfo&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; groupname = txtGroupName.Text;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; result = _gss.CreateApplicationGroup(project.Uri, groupname,&lt;br /&gt;                      &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Your Group Description&amp;quot;&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ListProjectsSelectionChanged(sender, &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;catch&lt;/font&gt;&lt;/span&gt; (&lt;span&gt;&lt;font color="#2b91af"&gt;Exception&lt;/font&gt;&lt;/span&gt; ex)&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;MessageBox&lt;/font&gt;&lt;/span&gt;.Show(ex.Message);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 5: Remove Application Group&lt;/h3&gt;

&lt;p&gt;This part is also very simple, you need to call DeleteApplicationGroup method under &lt;strong&gt;&lt;u&gt;IGroupSecurityService&lt;/u&gt;&lt;/strong&gt; with the Group sid you want to delete.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnRemoveGroupClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (listGroups.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; result = &lt;span&gt;&lt;font color="#2b91af"&gt;MessageBox&lt;/font&gt;&lt;/span&gt;.Show(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;You are about to remove application &lt;br /&gt;    group from TFS, press yes to continue&amp;quot;&lt;/font&gt;&lt;/span&gt;,&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Remove Group&amp;quot;&lt;/font&gt;&lt;/span&gt;, &lt;span&gt;&lt;font color="#2b91af"&gt;MessageBoxButton&lt;/font&gt;&lt;/span&gt;.YesNo, &lt;span&gt;&lt;font color="#2b91af"&gt;MessageBoxImage&lt;/font&gt;&lt;/span&gt;.Question);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;    &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (result == &lt;span&gt;&lt;font color="#2b91af"&gt;MessageBoxResult&lt;/font&gt;&lt;/span&gt;.No) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; group = listGroups.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;Identity&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; _gss.DeleteApplicationGroup(group.Sid);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ListProjectsSelectionChanged(sender, &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 6: Add User To Application Group&lt;/h3&gt;

&lt;p&gt;For this you need to obtain the User sid and Group sid and again using the &lt;strong&gt;&lt;u&gt;IGroupSecurityService&lt;/u&gt;&lt;/strong&gt; add call AddMemberToApplicationGroup method passing those values.&lt;/p&gt;

&lt;p&gt;If the User already exists in that Group you will receive a soap exception.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnAddUserToGroupClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (listAllUsers.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt; &lt;br /&gt;     || listGroups.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; group = listGroups.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;Identity&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; user = listAllUsers.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;Identity&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;try&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; _gss.AddMemberToApplicationGroup(group.Sid, user.Sid);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ListGroupsSelectionChanged(sender, &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;catch&lt;/font&gt;&lt;/span&gt; (&lt;span&gt;&lt;font color="#2b91af"&gt;Exception&lt;/font&gt;&lt;/span&gt; ex)&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;span&gt;&lt;font color="#008000"&gt;//TF50235: The group Test Group already has a member Administrators.&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;MessageBox&lt;/font&gt;&lt;/span&gt;.Show(ex.Message);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;h3&gt;Step 7: Remove User From Application Group&lt;/h3&gt;

&lt;p&gt;It’s the same as Adding a user to a group, just call RemoveMemberFromApplicationGroup method.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnRemoveUserFromGroupClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (listUsers.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt; || &lt;br /&gt;       listGroups.SelectedItem == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; group = listGroups.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;Identity&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; user = listUsers.SelectedItem &lt;span&gt;&lt;font color="#0000ff"&gt;as&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;Identity&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; _gss.RemoveMemberFromApplicationGroup(group.Sid,user.Sid);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; ListGroupsSelectionChanged(sender, &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/files/folders/950425/download.aspx" target="_blank"&gt;Download Demo Project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enjoy.&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=950429" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+API/default.aspx">TFS API</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET+4/default.aspx">.NET 4</category></item><item><title>My Lecture at Munich ALM Days 2011</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/28/my-lecture-at-munich-alm-days-2011.aspx</link><pubDate>Mon, 28 Nov 2011 23:42:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:943104</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=943104</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/28/my-lecture-at-munich-alm-days-2011.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/28/my-lecture-at-munich-alm-days-2011.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/28/my-lecture-at-munich-alm-days-2011.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;The conference was Amazing!!! &lt;/p&gt;  &lt;p&gt;I had great time in the conference with partners, customers and friends, I didn’t went to most of the lectures (Ich weiß nicht Deutsch spricht) but from the people who presented the presentation and the title there were plenty of interesting lectures.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sela.co.il/alm/products_Scrat.html" target="_blank"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="ScratBig" border="0" alt="ScratBig" align="left" src="http://blogs.microsoft.co.il/blogs/shair/ScratBig_1E965C36.jpg" width="77" height="113" /&gt;&lt;/a&gt;In my lecture I’ve talked about &lt;u&gt;Applied Software Testing with Visual Studio 2010&lt;/u&gt;, I showed demos on Test Manager, Web Performance Test, Load Testing and of course Coded UI Testing. I’ve also talked about &lt;strong&gt;Migration from Quality Center to TFS 2010 &lt;/strong&gt;using &lt;strong&gt;Scrat&lt;/strong&gt; that includes everything from Requirements, Defects, Test Cases, Converge etc… So you don’t have to be afraid losing data when moving to TFS 2010. Sela has more migration solutions &lt;a href="http://www.sela.co.il/alm/products.html" target="_blank"&gt;Sela&lt;/a&gt; for customers who wants to start working with TFS 2010.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sela.co.il/alm/products_WTM.html" target="_blank"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top:0px;border-right:0px;padding-top:0px;" title="WTMBig" border="0" alt="WTMBig" align="left" src="http://blogs.microsoft.co.il/blogs/shair/WTMBig_504153BE.jpg" width="78" height="115" /&gt;&lt;/a&gt;And another product I talked about during my presentation was &lt;strong&gt;WTM&lt;/strong&gt; (Web Test Manager), if you want to manage and run your test cases from the Web without any local installation of Test Manager you may want to Try Sela WTM product - &lt;strong&gt;WTM&lt;/strong&gt; is a web application integrated in VS 2010 Team Web Access™.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sela.co.il/alm/products_Wimbi.html" target="_blank"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;float:left;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="WimbiBig" border="0" alt="WimbiBig" align="left" src="http://blogs.microsoft.co.il/blogs/shair/WimbiBig_6DD32EBD.jpg" width="77" height="113" /&gt;&lt;/a&gt;Beside Test Products from Sela many people at the conference were very interested in &lt;strong&gt;WIMBI&lt;/strong&gt; – WIMBI allows better target your applications to customer needs through efficient customization. Wimbi creates new versions by integrating features instead of merging files. Wimbi enables merging entire Work Items without requiring to individually collecting all the Changesets related to these Work Items.&lt;/p&gt;  &lt;p&gt;Here is some pictures:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0018_67E86557.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0018" border="0" alt="IMG_0018" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0018_thumb_1BECDEDE.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0028_09083567.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0028" border="0" alt="IMG_0028" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0028_thumb_06CAEB04.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0044_14D9B434.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0044" border="0" alt="IMG_0044" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0044_thumb_279E1211.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0046_7DDA971D.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0046" border="0" alt="IMG_0046" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0046_thumb_01881621.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0049_77074200.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0049" border="0" alt="IMG_0049" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0049_thumb_196BAAEF.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0057_042D7F7A.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0057" border="0" alt="IMG_0057" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0057_thumb_1A8FF834.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0058_48B9CE21.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0058" border="0" alt="IMG_0058" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0058_thumb_55375570.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0082_04399148.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0082" border="0" alt="IMG_0082" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0082_thumb_3A4AE3CA.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/IMG_0020_173A725A.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="IMG_0020" border="0" alt="IMG_0020" src="http://blogs.microsoft.co.il/blogs/shair/IMG_0020_thumb_7626B418.jpg" width="244" height="184" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;So, Thanks everyone who came to my lecture, it was fun and exciting for me presenting at Munich ALM Days 2011, I hope I’ll see you all at the next conference.&lt;/p&gt;  &lt;p&gt;Vielen Dank!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=943104" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Work+Items/default.aspx">Work Items</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Testing/default.aspx">Testing</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Events/default.aspx">Events</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/OFFTOPIC/default.aspx">OFFTOPIC</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/WebTest/default.aspx">WebTest</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+API/default.aspx">TFS API</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Sela+Group/default.aspx">Sela Group</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET+4/default.aspx">.NET 4</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Scrat/default.aspx">Scrat</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ALM/default.aspx">ALM</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/WIMBI/default.aspx">WIMBI</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/WTM/default.aspx">WTM</category></item><item><title>TFS API Part 40–Build Service Host</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/14/tfs-api-part-40-build-service-host.aspx</link><pubDate>Mon, 14 Nov 2011 19:15:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:932205</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=932205</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/14/tfs-api-part-40-build-service-host.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/14/tfs-api-part-40-build-service-host.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/11/14/tfs-api-part-40-build-service-host.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;First, what is the Build Service Host or &lt;a href="http://msdn.microsoft.com/es-es/library/microsoft.teamfoundation.build.client.ibuildservicehost.aspx" target="_blank"&gt;IBuildServiceHost&lt;/a&gt;?&lt;/p&gt;  &lt;p&gt;The BuildServiceHost object represent the physical location of the Controller and/or Agent objects. The name property is usually the machine name that the Controller or Agent lives on. In earlier versions, this was simply the Machine Name property on the Agent.&lt;/p&gt;  &lt;p&gt;Now, I’m working with a customer works with Lab Manager and after upgrading the SCVVM and perform some port changes we faced an issue – The Build Service Host stuck in your server with no way to remove it. (there is no UI for Build Hosts)&lt;/p&gt;  &lt;p&gt;Now when trying to register the Lab environments we received an error the Host with the same name already exists, so I’ve built a small tool to help me managing the Build Service Hosts.&lt;/p&gt; &lt;a class="CommonImageTextButton CommonDownloadButton" href="http://blogs.microsoft.co.il/files/folders/932196/download.aspx"&gt;Download&lt;/a&gt;   &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/1_5E0CD98F.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" title="1" border="0" alt="1" src="http://blogs.microsoft.co.il/blogs/shair/1_thumb_7F3CCF6B.png" width="459" height="491" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Step 1: Connect To TFS and Obtain IBuildServer&lt;/h3&gt;  &lt;p&gt;As any TFS API article we first need to connect TFS and from the TFS Object Model to obtain the IBuildServer object.&lt;/p&gt;  &lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; BtnConnectClick(&lt;span&gt;&lt;font color="#0000ff"&gt;object&lt;/font&gt;&lt;/span&gt; sender, &lt;span&gt;&lt;font color="#2b91af"&gt;RoutedEventArgs&lt;/font&gt;&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;var&lt;/font&gt;&lt;/span&gt; tpp = &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectPicker&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;TeamProjectPickerMode&lt;/font&gt;&lt;/span&gt;.NoProject, &lt;span&gt;&lt;font color="#0000ff"&gt;false&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&amp;#160; tpp.ShowDialog();&lt;br /&gt; &lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (tpp.SelectedTeamProjectCollection != &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt; &amp;amp;&amp;amp; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (tpp.SelectedTeamProjectCollection == &lt;span&gt;&lt;font color="#0000ff"&gt;null&lt;/font&gt;&lt;/span&gt; &amp;amp;&amp;amp; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; !tpp.SelectedTeamProjectCollection.HasAuthenticated)) &lt;span&gt;&lt;font color="#0000ff"&gt;return&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt; &lt;br /&gt;&amp;#160; _tfs = tpp.SelectedTeamProjectCollection;&lt;br /&gt;&amp;#160; _buildSrv = _tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt; &lt;br /&gt;&amp;#160; ShowList();&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;p&gt;Showing the current Hosts in the TFS:&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; ShowList()&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; buildList.ItemsSource = _buildSrv.QueryBuildServiceHosts(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;*&amp;quot;&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;

&lt;p&gt;The IBuildServer is running Team Foundation Build and has control on everything related to Builds.&lt;/p&gt;

&lt;h3&gt;Step 2: Delete, Create and Rename&lt;/h3&gt;

&lt;p&gt;After we obtain all Build Service Hosts we will use the IBuildServer to Create, Delete and Rename the hosts on our TFS.&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="font-size:12pt;"&gt;private&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="font-size:12pt;"&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; DeleteHost(&lt;span&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;/span&gt; hostName)&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt; buildServer = _tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServiceHost&lt;/font&gt;&lt;/span&gt; bsh = buildServer.GetBuildServiceHost(hostName);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; bsh.Delete();&lt;br /&gt;}&lt;br /&gt; &lt;br /&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;private&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; Create(&lt;span&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;/span&gt; hostName)&lt;br /&gt;{&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt; buildServer = _tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServiceHost&lt;/font&gt;&lt;/span&gt; hostsrv = buildServer.CreateBuildServiceHost(hostName,&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;http&amp;quot;&lt;/font&gt;&lt;/span&gt;, hostName, 8181);&lt;br /&gt;&amp;#160; hostsrv.Save();&lt;br /&gt;}&lt;br /&gt; &lt;br /&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;private&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#0000ff"&gt;void&lt;/font&gt;&lt;/span&gt; Rename(&lt;span&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;/span&gt; currentHostName, &lt;span&gt;&lt;font color="#0000ff"&gt;string&lt;/font&gt;&lt;/span&gt; newHostName)&lt;br /&gt;{&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt; buildServer = _tfs.GetService&amp;lt;&lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServer&lt;/font&gt;&lt;/span&gt;&amp;gt;();&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;IBuildServiceHost&lt;/font&gt;&lt;/span&gt; hostsrv = buildServer.GetBuildServiceHost&lt;br /&gt; (currentHostName);&lt;br /&gt;&amp;#160; hostsrv.Name = newHostName;&lt;br /&gt;&amp;#160; &lt;span&gt;&lt;font color="#2b91af"&gt;UriBuilder&lt;/font&gt;&lt;/span&gt; uriBuilder = &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;#160;&lt;span&gt;&lt;font color="#2b91af"&gt;UriBuilder&lt;/font&gt;&lt;/span&gt;(hostsrv.BaseUrl);&lt;br /&gt;&amp;#160; uriBuilder.Host = newHostName;&lt;br /&gt;&amp;#160; hostsrv.BaseUrl = uriBuilder.Uri;&lt;br /&gt;&amp;#160; hostsrv.Save();&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;
&lt;a class="CommonImageTextButton CommonDownloadButton" href="http://blogs.microsoft.co.il/files/folders/932196/download.aspx"&gt;Download&lt;/a&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=932205" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+Build/default.aspx">Team Build</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+API/default.aspx">TFS API</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/.NET+4/default.aspx">.NET 4</category></item><item><title>Microsoft Test Manager–Multiline Support</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/20/microsoft-test-manager-multiline-support.aspx</link><pubDate>Thu, 20 Oct 2011 16:01:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:918169</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=918169</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/20/microsoft-test-manager-multiline-support.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/20/microsoft-test-manager-multiline-support.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/20/microsoft-test-manager-multiline-support.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p dir="rtl"&gt;אני יודע, אתם בטח לא מאמינים זה סוף כל סוף קורה – מיקרוסופט הוציאה “תיקון” ל – Microsoft Test Manager אשר יאפשר לכתוב צעדי בדיקה עם שורות מרובות.&lt;/p&gt;  &lt;p dir="rtl"&gt;תיקון זה מגיעה עם עוד מספר תיקונים קטנים אבל ללא ספק תמיכה בשורות מרובות הינה המשמעותית ביותר.&lt;/p&gt;  &lt;p dir="rtl"&gt;הכתבה המלאה - &lt;a href="http://blogs.msdn.com/b/bharry/archive/2011/10/19/multi-line-test-steps-available-in-microsoft-test-manager-among-other-things.aspx" target="_blank"&gt;Brian Harry&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And one time in English - Microsoft has released Multiline support for Test Cases in Microsoft Test Manager!!!&lt;/p&gt;  &lt;p dir="rtl" align="center"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=212065&amp;amp;clcid=0x409" target="_blank"&gt;Visual Studio 2010 SP1 TFS Compatibility GDR&lt;/a&gt; &amp;lt;– Download&amp;#160; &amp;lt;- הורדה&lt;/p&gt;  &lt;p dir="rtl" align="center"&gt;&lt;strong&gt;&lt;u&gt;Alt+Enter&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_5F0E16E9.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_5CE0F253.png" width="753" height="694" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=918169" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Work+Items/default.aspx">Work Items</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Testing/default.aspx">Testing</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/OFFTOPIC/default.aspx">OFFTOPIC</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ITPRO/default.aspx">ITPRO</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Microsoft+Test+Manager/default.aspx">Microsoft Test Manager</category></item><item><title>How To Change Test Scribe Template</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/16/how-to-change-test-scribe-template.aspx</link><pubDate>Sun, 16 Oct 2011 18:19:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:916417</guid><dc:creator>shair</dc:creator><slash:comments>8</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=916417</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/16/how-to-change-test-scribe-template.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/16/how-to-change-test-scribe-template.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/10/16/how-to-change-test-scribe-template.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;I’ve wrote about &lt;a href="http://blogs.microsoft.co.il/blogs/shair/archive/2010/07/26/test-scribe-automatic-document-generating-for-test-manager-2010.aspx" target="_blank"&gt;Test Scribe&lt;/a&gt; couple of months ago and explained how you can Generate word documents from Microsoft Test Manager.&lt;/p&gt;
&lt;p&gt;Test Scribe is an awesome tool for Generating Test Documents, but can I change the document template? Test Scribe comes with a Default Template and many customers what’s to change the template to their needs.&lt;/p&gt;
&lt;p&gt;This is the best way I found how to do that, and it require to drill down to some file inside the Test Scribe. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Make Sure you backup all files before doing any changes!!&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;h3&gt;Locate Test Scribe Template&lt;/h3&gt;
&lt;p&gt;Navigate to –&amp;gt; &lt;br /&gt;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\TeamTest&lt;/p&gt;
&lt;p&gt;Copy “&lt;strong&gt;Microsoft.TeamFoundation.TestManagement.Tools.TestScribe.sx&lt;/strong&gt;” &lt;font color="#ff0000"&gt;&lt;strong&gt;to another folder&lt;/strong&gt;&lt;/font&gt;, change the file name and extension to “&lt;strong&gt;Microsoft.TeamFoundation.TestManagement.Tools.TestScribe.&lt;font style="BACKGROUND-COLOR:#ffff00;"&gt;zip&lt;/font&gt;&lt;/strong&gt;”.&lt;/p&gt;
&lt;p&gt;Extract file content, and you should have &lt;u&gt;TestPlan&lt;/u&gt; and &lt;u&gt;TestRunSummary&lt;/u&gt; folder contains the Document Template.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_68A36418.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-RIGHT-WIDTH:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_3054C733.png" width="703" height="176" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Test Plan Directory Content:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_623C41F0.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-RIGHT-WIDTH:0px;MARGIN:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_20555CA2.png" width="184" height="156" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Changing Test Plan Section&lt;/h3&gt;
&lt;p&gt;I’ve open “TestPlan” directory and start editing the “TestPlanSection.tt”.&lt;/p&gt;
&lt;p&gt;In the picture below you can see the two selected Paragraphs that are responsible to the static text display in the header of the document.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_30A0AE8E.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-RIGHT-WIDTH:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_14037114.png" width="698" height="380" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I’ve remove those and also changed the Header style, instead of showing the Test Plan Id I wanted to only show the Test Plan Name and make sure the Name is hyper link to the Test Plan it self.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#ff0000"&gt;&lt;font style="FONT-SIZE:12pt;"&gt;SprParagraph&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="FONT-SIZE:12pt;"&gt;&lt;br /&gt;(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Heading1&amp;quot;&lt;/font&gt;&lt;/span&gt;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprImage&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;/Images/TestPlan_32.png&amp;quot;&lt;/font&gt;&lt;/span&gt;),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprText&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#ff0000"&gt;SprHost&lt;/font&gt;&lt;/span&gt;.Resources.GetString(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;TestPlanLabel&amp;quot;&lt;/font&gt;&lt;/span&gt;)),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprText&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;String&lt;/font&gt;&lt;/span&gt;.Format(&lt;span&gt;&lt;font color="#2b91af"&gt;CultureInfo&lt;/font&gt;&lt;/span&gt;.CurrentCulture,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprHost&lt;/font&gt;&lt;/span&gt;.Resources.GetString(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;ItemHeaderFmtString&amp;quot;&lt;/font&gt;&lt;/span&gt;),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;/span&gt;)),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprHyperlink&lt;/font&gt;&lt;/span&gt;(TestPlan.Name, &lt;span&gt;&lt;font color="#ff0000"&gt;BuildUrl&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;testing/testplan/open?id=&amp;quot;&lt;br /&gt;     &lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font style="FONT-SIZE:12pt;"&gt; + TestPlan.Id.ToString()))&lt;br /&gt;); &lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_49A890A1.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-RIGHT-WIDTH:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_262BEC3C.png" width="682" height="414" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Adding Attachments&lt;/h3&gt;
&lt;p&gt;This is another issue I keep hearing from many customers, How can I add attachments to the document?&lt;/p&gt;
&lt;p&gt;In the TestCaseSection.tt just before the “SprMultilineText(&amp;quot;Errormessage&amp;quot;, testCase.Description);”&lt;/p&gt;
&lt;p&gt;Add the following: &lt;/p&gt;&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;&lt;font style="FONT-SIZE:12pt;"&gt;if&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="FONT-SIZE:12pt;"&gt; (&lt;span&gt;&lt;font color="#ff0000"&gt;testCase&lt;/font&gt;&lt;/span&gt;.Attachments.Count &amp;gt; 0)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprParagraph&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Heading4&amp;quot;&lt;/font&gt;&lt;/span&gt;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprText&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Attachments&amp;quot;&lt;/font&gt;&lt;/span&gt;),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprText&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;String&lt;/font&gt;&lt;/span&gt;.Format(&lt;span&gt;&lt;font color="#2b91af"&gt;CultureInfo&lt;/font&gt;&lt;/span&gt;.CurrentCulture,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprHost&lt;/font&gt;&lt;/span&gt;.Resources.GetString(&lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;ItemHeaderFmtString&amp;quot;&lt;/font&gt;&lt;/span&gt;),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;testCase&lt;/font&gt;&lt;/span&gt;.Attachments.Count))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br /&gt; &lt;br /&gt;&amp;nbsp; &lt;span&gt;&lt;font color="#0000ff"&gt;for&lt;/font&gt;&lt;/span&gt; (&lt;span&gt;&lt;font color="#0000ff"&gt;int&lt;/font&gt;&lt;/span&gt; i = 0; i &amp;lt; &lt;span&gt;&lt;font color="#ff0000"&gt;testCase&lt;/font&gt;&lt;/span&gt;.Attachments.Count; i++)&lt;br /&gt;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#2b91af"&gt;ITestAttachment&lt;/font&gt;&lt;/span&gt; attachement = &lt;span&gt;&lt;font color="#ff0000"&gt;testCase&lt;/font&gt;&lt;/span&gt;.Attachments[i];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprParagraph&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;Heading5&amp;quot;&lt;/font&gt;&lt;/span&gt;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprText&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#2b91af"&gt;String&lt;/font&gt;&lt;/span&gt;.Format(&lt;span&gt;&lt;font color="#2b91af"&gt;CultureInfo&lt;/font&gt;&lt;/span&gt;.CurrentCulture, &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font color="#3cb371"&gt;{0}&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font color="#a31515"&gt;: &amp;quot;&lt;/font&gt;&lt;/span&gt;, i + 1)),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;&lt;font color="#ff0000"&gt;SprHyperlink&lt;/font&gt;&lt;/span&gt;(attachement.Name, attachement.Uri.AbsoluteUri)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br /&gt;&amp;nbsp; }&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_4419D463.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-RIGHT-WIDTH:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_515037A9.png" width="689" height="215" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/files/folders/916414/download.aspx" target="_blank"&gt;Download Custom Template&lt;/a&gt; (Backup and &lt;font size="2"&gt;Copy to C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\TeamTest&lt;/font&gt;)&lt;/p&gt;
&lt;p&gt;This is for now, I’ll continue customizing the template over the next weeks.&lt;/p&gt;
&lt;p&gt;Enjoy&lt;/p&gt;&lt;/div&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=916417" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Testing/default.aspx">Testing</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/How+To/default.aspx">How To</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Microsoft+Test+Manager/default.aspx">Microsoft Test Manager</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Test+Scribe/default.aspx">Test Scribe</category></item><item><title>Team Foundation Server on Windows Azure: A Preview is available!</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/09/14/team-foundation-server-on-windows-azure-a-preview-is-available.aspx</link><pubDate>Thu, 15 Sep 2011 02:35:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:900810</guid><dc:creator>shair</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=900810</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/09/14/team-foundation-server-on-windows-azure-a-preview-is-available.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/09/14/team-foundation-server-on-windows-azure-a-preview-is-available.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/09/14/team-foundation-server-on-windows-azure-a-preview-is-available.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21&amp;amp;appId=184186808308137" scrolling="no" frameborder="0" style="border:none;overflow:hidden;width:450px;height:21px;"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;Straight from the oven, &lt;a href="http://blogs.msdn.com/b/bharry/archive/2011/09/01/team-foundation-server-on-windows-azure.aspx" target="_blank"&gt;Brian Harry&lt;/a&gt; just post and gave 250 free TFS Azure Accounts for those who didn’t came to Build Conference.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;250 use activation code: “bharry”&lt;/p&gt;    &lt;p&gt;To use the code, visit &lt;a href="http://tfspreview.com/"&gt;http://tfspreview.com&lt;/a&gt;.&amp;#160; Below you’ll find a walk through of the sign up experience.&lt;/p&gt; &lt;/blockquote&gt;  &lt;h5&gt;Although the service is pre-release at this time and is not complete, much of the TFS functionality works today.&amp;#160; You can use:&lt;/h5&gt;  &lt;ul&gt;   &lt;li&gt;Source control &lt;/li&gt;    &lt;li&gt;Work item tracking &lt;/li&gt;    &lt;li&gt;Agile project management (a &lt;a href="http://blogs.msdn.com/b/bharry/archive/2011/06/14/agile-project-management-in-visual-studio-alm-v-next.aspx"&gt;new feature&lt;/a&gt; in TFS 11) &lt;/li&gt;    &lt;li&gt;Testing &lt;/li&gt;    &lt;li&gt;Build automation (though for now you will need to set up a TFS 11 CTP build agent on your own hardware) &lt;/li&gt;    &lt;li&gt;and more…&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;You can use most of the TFS clients – including VS 2010 and Test Professional 2010 (&lt;a href="http://go.microsoft.com/fwlink/?LinkID=212065&amp;amp;clcid=0x409"&gt;with an available client patch&lt;/a&gt;), VS 11 (&lt;a href="http://blogs.msdn.com/b/jasonz/archive/2011/09/14/announcing-visual-studio-11-developer-preview.aspx"&gt;CTP to be available soon&lt;/a&gt;), Team Explorer Everywhere (&lt;a href="http://go.microsoft.com/fwlink/?LinkID=228575"&gt;compatible update available here&lt;/a&gt;), Microsoft Office integration, etc.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/bharry/archive/2011/09/01/team-foundation-server-on-windows-azure.aspx" target="_blank"&gt;Full Article And Getting Started Instruction from Brian Harry&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=900810" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Utilities/default.aspx">TFS Utilities</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Testing/default.aspx">Testing</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+11/default.aspx">TFS 11</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+11/default.aspx">Visual Studio 11</category></item><item><title>TFS 2010 Training Kit</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/08/26/tfs-2010-training-kit.aspx</link><pubDate>Fri, 26 Aug 2011 12:36:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:888976</guid><dc:creator>shair</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=888976</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/08/26/tfs-2010-training-kit.aspx#comments</comments><description>&lt;div class="share-buttons"&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:15px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;a class="twitter-share-button" href="http://twitter.com/share?url=http://blogs.microsoft.co.il/blogs/shair/archive/2011/08/26/tfs-2010-training-kit.aspx"&gt;Tweet&lt;/a&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;PADDING-RIGHT:25px;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;script type="IN/Share"&gt;&lt;/script&gt;
&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?app_id=184186808308137&amp;amp;href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/08/26/tfs-2010-training-kit.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21" frameborder="0"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div style="TEXT-ALIGN:left;LINE-HEIGHT:1em;FONT-FAMILY:Arial, Helvetica, sans-serif;FLOAT:left;FONT-SIZE:14px;"&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/SELA_College_Logo_0020AD17.gif"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-BOTTOM:0px;BORDER-LEFT:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP:0px;BORDER-RIGHT:0px;PADDING-TOP:0px;" title="SELA_College_Logo" border="0" alt="SELA_College_Logo" src="http://blogs.microsoft.co.il/blogs/shair/SELA_College_Logo_thumb_253DF783.gif" width="125" height="40" /&gt;&lt;/a&gt;Yuval Mazor just post about &lt;a href="http://blogs.microsoft.co.il/blogs/yuvmaz/archive/2011/08/24/introduction-to-tfs-2010-training-kit-is-released.aspx" target="_blank"&gt;“Introduction to TFS 2010 Training Kit is Released!”&lt;/a&gt; , Yuval Mazor and Assaf Stone did an amazing work for Microsoft in the past months writing the TFS 2010 Training Kit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;TFS 2010 Training Kit&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;The Introduction to Team Foundation Server 2010 Training Kit includes presentations, hands-on labs and demos designed to help you get acquainted with the features of Team Foundation Server (TFS) 2010. This Training Kit contains several demos and hands-on labs that require some additional setup. For instructions, please see the Setup document.&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Download the Introduction to TFS 2010 Training Kit &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=27152"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=888976" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/DEV/default.aspx">DEV</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Microsoft+Test+Manager/default.aspx">Microsoft Test Manager</category></item><item><title>How To Change TFS 2010 Attachment Size</title><link>http://blogs.microsoft.co.il/blogs/shair/archive/2011/07/18/how-to-change-tfs-2010-attachment-size.aspx</link><pubDate>Mon, 18 Jul 2011 19:11:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:867554</guid><dc:creator>shair</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/shair/rsscomments.aspx?PostID=867554</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/shair/archive/2011/07/18/how-to-change-tfs-2010-attachment-size.aspx#comments</comments><description>&lt;div style="PADDING-BOTTOM:0px;MARGIN:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;FLOAT:none;PADDING-TOP:0px;" class="wlWriterHeaderFooter"&gt;
&lt;table&gt;

&lt;tr&gt;
&lt;td&gt;&lt;iframe style="WIDTH:120px;HEIGHT:21px;" src="http://platform.twitter.com/widgets/tweet_button.html" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;
&lt;td&gt;
&lt;div class="g-plusone"&gt;&lt;/div&gt;&lt;/td&gt;
&lt;td&gt;&lt;iframe style="WIDTH:100px;HEIGHT:21px;" src="http://www.facebook.com/plugins/like.php?app_id=184186808308137&amp;amp;href=http://blogs.microsoft.co.il/blogs/shair/archive/2011/07/18/how-to-change-tfs-2010-attachment-size.aspx&amp;amp;send=false&amp;amp;layout=button_count&amp;amp;width=450&amp;amp;show_faces=false&amp;amp;action=like&amp;amp;colorscheme=light&amp;amp;font=segoe+ui&amp;amp;height=21" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;
&lt;td&gt;&lt;a style="DISPLAY:none;" href="http://www.codeproject.com/script/Articles/BlogFeedList.aspx?amid=7121713" rel="tag"&gt;CodeProject&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;Here is a post from 2008 on &lt;a href="http://beta.blogs.microsoft.co.il/blogs/shair/archive/2008/12/02/how-to-change-work-item-attachment-size-limit.aspx" target="_blank"&gt;how to change attachment size in TFS 2008&lt;/a&gt;, the same concept is available in 2010 but there is a small confusion about 2010.&lt;/p&gt;
&lt;p&gt;Many people had problems changing the attachment size in TFS 2010 using the same web service because the following error: 500 Internal Server Error&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/shair/image_599F8165.png"&gt;&lt;img style="BACKGROUND-IMAGE:none;BORDER-BOTTOM:0px;BORDER-LEFT:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;BORDER-TOP:0px;BORDER-RIGHT:0px;PADDING-TOP:0px;" title="image" border="0" alt="image" src="http://blogs.microsoft.co.il/blogs/shair/image_thumb_3D1269B8.png" width="657" height="298" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There where people who changes the attachment size using code:&lt;/p&gt;&lt;td style="WORD-WRAP:break-word;"&gt;&lt;pre class="code"&gt;&lt;span&gt;&lt;font color="#ff0000"&gt;&lt;font style="FONT-SIZE:12pt;"&gt;TeamFoundationServer&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;font style="FONT-SIZE:12pt;"&gt; tfs = &lt;span&gt;&lt;font color="#ff0000"&gt;TeamFoundationServerFactory&lt;/font&gt;&lt;/span&gt;.GetServer(&lt;span&gt;&lt;font color="#a31515"&gt;@&amp;quot;yourtfsserver/.../DefaultCollection&amp;quot;&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&lt;span&gt;&lt;font color="#ff0000"&gt;ITeamFoundationRegistry&lt;/font&gt;&lt;/span&gt; rw = tfs.&lt;span&gt;&lt;font color="#ff0000"&gt;GetService&lt;/font&gt;&lt;/span&gt;&amp;lt;&lt;span&gt;&lt;font color="#ff0000"&gt;ITeamFoundationRegistry&lt;/font&gt;&lt;/span&gt;&amp;gt;(); &lt;br /&gt;&lt;span&gt;&lt;font color="#ff0000"&gt;RegistryEntryCollection&lt;/font&gt;&lt;/span&gt; rc = rw.&lt;span&gt;&lt;font color="#ff0000"&gt;ReadEntries&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#a31515"&gt;@&amp;quot;/Service/WorkItemTracking/Settings/MaxAttachmentSize&amp;quot;&lt;/font&gt;&lt;/span&gt;);&lt;br /&gt;&lt;span&gt;&lt;font color="#ff0000"&gt;RegistryEntry&lt;/font&gt;&lt;/span&gt; re = &lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;span&gt;&lt;font color="#ff0000"&gt;RegistryEntry&lt;/font&gt;&lt;/span&gt;(&lt;span&gt;&lt;font color="#a31515"&gt;@&amp;quot;/Service/WorkItemTracking/Settings/MaxAttachmentSize&amp;quot;&lt;/font&gt;&lt;/span&gt;, &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;20971520&amp;quot;&lt;/font&gt;&lt;/span&gt;);&lt;span&gt;&lt;font color="#008000"&gt;//20MB&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;span&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt; (&lt;span&gt;&lt;font color="#ff0000"&gt;rc&lt;/font&gt;&lt;/span&gt;.Count != 0)&lt;br /&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; re = rc.&lt;span&gt;&lt;font color="#ff0000"&gt;First&lt;/font&gt;&lt;/span&gt;();&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; re.&lt;span&gt;&lt;font color="#ff0000"&gt;Value&lt;/font&gt;&lt;/span&gt; = &lt;span&gt;&lt;font color="#a31515"&gt;&amp;quot;20971520&amp;quot;&lt;/font&gt;&lt;/span&gt;;&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;span&gt;&lt;font color="#ff0000"&gt;rw&lt;/font&gt;&lt;/span&gt;.WriteEntries(&lt;span&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt; List&amp;lt;&lt;span&gt;&lt;font color="#ff0000"&gt;RegistryEntry&lt;/font&gt;&lt;/span&gt;&amp;gt;() { re });&lt;/font&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;p&gt;But the only thing you had to do in order to change the attachment size in TFS 2010 is to change &lt;strong&gt;&lt;u&gt;_tfs_resources&lt;/u&gt;&lt;/strong&gt; to the collection name, as follow:&lt;/p&gt;
&lt;p&gt;http://localhost:8080/tfs/_tfs_resources/WorkItemTracking/v1.0/ConfigurationSettingsService.asmx?op=SetMaxAttachmentSize&amp;nbsp;&lt;/p&gt;
&lt;p&gt;TO:&lt;/p&gt;
&lt;p&gt;http://localhost:8080/tfs/&lt;font style="BACKGROUND-COLOR:#ffff00;"&gt;&lt;strong&gt;&amp;lt;CollectionName&amp;gt;&lt;/strong&gt;&lt;/font&gt;/WorkItemTracking/v1.0/ConfigurationSettingsService.asmx?op=SetMaxAttachmentSize&lt;/p&gt;
&lt;p&gt;Enjoy&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=867554" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS/default.aspx">TFS</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+Administration/default.aspx">TFS Administration</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/WorkItem+Tracking/default.aspx">WorkItem Tracking</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Work+Items/default.aspx">Work Items</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TECH/default.aspx">TECH</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/ITPRO/default.aspx">ITPRO</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+API/default.aspx">TFS API</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/Team+System+2010/default.aspx">Team System 2010</category><category domain="http://blogs.microsoft.co.il/blogs/shair/archive/tags/TFS+2010/default.aspx">TFS 2010</category></item></channel></rss>