<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss 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/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>The Bright Lights</title><link>http://blogs.claritycon.com/blogs/steve_holstad/default.aspx</link><description>Experienced .NET consultant's views on Silverlight, Microsoft.NET, web dev, and anything that strikes his fancy. Clarity Consulting, Chicago, IL.</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><geo:lat>41.945681</geo:lat><geo:long>-87.704803</geo:long><image><link>http://www.claritycon.com</link><url>http://employees.claritycon.com/sholstad/blogImages/claritysmall.png</url><title>Clarity Consulting, Chicago, IL</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/ClarityBlogs/SteveHolstad" type="application/rss+xml" /><item><title>Twitterlight updated to Silverlight RTW</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/432938966/twitterlight-updated-to-silverlight-rtw.aspx</link><pubDate>Sun, 26 Oct 2008 21:20:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:17993</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=17993</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/10/26/twitterlight-updated-to-silverlight-rtw.aspx#comments</comments><description>Twitterlight, THE browser-based Silverlight Twitter client, has been updated from Beta 2 to the official Silverlight 2.0 RTW. http://www.twitterlight.com...(&lt;a href="http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/10/26/twitterlight-updated-to-silverlight-rtw.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=17993" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=1GJDM"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=1GJDM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=nl9eM"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=nl9eM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=71iXm"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=71iXm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=6c76m"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=6c76m" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=QrgVM"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=QrgVM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/432938966" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Twitter/default.aspx">Twitter</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/RTW/default.aspx">RTW</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/10/26/twitterlight-updated-to-silverlight-rtw.aspx</feedburner:origLink></item><item><title>WhereTheEL: Tracking the Chicago CTA "El" System</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/342786070/wheretheel-tracking-the-chicago-cta-quot-el-quot-system.aspx</link><pubDate>Tue, 22 Jul 2008 18:24:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:7788</guid><dc:creator>sholstad</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=7788</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/07/22/wheretheel-tracking-the-chicago-cta-quot-el-quot-system.aspx#comments</comments><description>Try the WhereTheEL alpha The past few weeks I have been spending some of my days creating a project we have discussed here at Clarity for quite some time: live tracking the trains of the Chicago &amp;quot;EL&amp;quot; system. Currently GPS data is not yet available...(&lt;a href="http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/07/22/wheretheel-tracking-the-chicago-cta-quot-el-quot-system.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=7788" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=yFDqiJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=yFDqiJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=fK5bVJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=fK5bVJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=hICwaj"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=hICwaj" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=TAQSej"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=TAQSej" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=KSaFJJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=KSaFJJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/342786070" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+2.0+Framework/default.aspx">.NET 2.0 Framework</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET+2.0/default.aspx">ASP.NET 2.0</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Gadgets/default.aspx">Gadgets</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Twitter/default.aspx">Twitter</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/CTA/default.aspx">CTA</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/EL/default.aspx">EL</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Google+Maps/default.aspx">Google Maps</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/07/22/wheretheel-tracking-the-chicago-cta-quot-el-quot-system.aspx</feedburner:origLink></item><item><title>Twitterlight updated with animating wrap panel</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/281590615/twitterlight-updated-with-animating-wrap-panel.aspx</link><pubDate>Thu, 01 May 2008 17:33:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:5049</guid><dc:creator>sholstad</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=5049</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/05/01/twitterlight-updated-with-animating-wrap-panel.aspx#comments</comments><description>Twitterlight has been updated with some new features that really up the usability of the app. http://www.twitterlight.com Defaulted the view to Public, so non-Twitter users can see data on page load Added profile pics back in Added link to Twitter page...(&lt;a href="http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/05/01/twitterlight-updated-with-animating-wrap-panel.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=5049" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=XXx71H"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=XXx71H" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=R2QA3H"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=R2QA3H" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=gCTIuh"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=gCTIuh" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=yYW8mh"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=yYW8mh" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=5WI6QH"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=5WI6QH" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/281590615" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Twitter+Twitterlight+SIlverlight+Beta+C_2300_/default.aspx">Twitter Twitterlight SIlverlight Beta C#</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/05/01/twitterlight-updated-with-animating-wrap-panel.aspx</feedburner:origLink></item><item><title>Twitterlight to Silverlight 2.0 Beta 1</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/262349320/twitterlight-to-silverlight-2-0-beta-1.aspx</link><pubDate>Wed, 02 Apr 2008 02:18:19 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:4774</guid><dc:creator>sholstad</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=4774</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/04/01/twitterlight-to-silverlight-2-0-beta-1.aspx#comments</comments><description>&lt;p&gt;Ok ok, I&amp;#39;ve bitten the bullet and upgraded the Twitterlight Silverlight Twitter client to Silverlight 2.0 Beta 1.&amp;nbsp; The &lt;a href="http://blogs.msdn.com/coding4fun/archive/2008/02/24/7883342.aspx"&gt;Coding4Fun article&lt;/a&gt;&amp;nbsp;has been updated with the latest source.&lt;/p&gt; &lt;p&gt;The client is live at &lt;a href="http://www.twitterlight.com" target="_blank"&gt;twitterlight.com&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;The major updates involved changing how some of the synchronous web service calls (authenticate, create TinyUrl) work within the app, now that all web references (woops, &amp;quot;service references&amp;quot; now) are asynchronous.&amp;nbsp; Some XAML tweaks and minor code changes, and we&amp;#39;re good to go.&lt;/p&gt; &lt;p&gt;View the &lt;a href="http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/01/08/twitterlight-silverlight-twitter-mashup-with-componentone-sapphire-controls.aspx" target="_blank"&gt;initial post&lt;/a&gt;&amp;nbsp;describing the article.&lt;/p&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=4774" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=376nL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=376nL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=4baFL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=4baFL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=hE39l"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=hE39l" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=kgQwl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=kgQwl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=MtT3L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=MtT3L" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/262349320" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/VS+2005/default.aspx">VS 2005</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+3.0+_2F00_+3.5+_2F00_+Silverlight/default.aspx">.NET 3.0 / 3.5 / Silverlight</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Presentation+Foundation+_2800_WPF_2900_/default.aspx">Windows Presentation Foundation (WPF)</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/04/01/twitterlight-to-silverlight-2-0-beta-1.aspx</feedburner:origLink></item><item><title>Facebook Developer Toolkit 1.6 Released on CodePlex</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607801/3612.aspx</link><pubDate>Tue, 15 Jan 2008 17:40:13 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3612</guid><dc:creator>sholstad</dc:creator><slash:comments>3</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3612</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/01/15/3612.aspx#comments</comments><description>&lt;p&gt;We've released the latest version of the &lt;a href="http://www.codeplex.com/FacebookToolkit" target="_blank"&gt;Facebook Developer Toolkit&lt;/a&gt; on CodePlex.&amp;nbsp; &lt;/p&gt; &lt;p&gt;This release addresses a change to the &lt;strong&gt;Profile.SetFBML()&lt;/strong&gt; method within the Facebook API.&amp;nbsp; As of Thursday, Jan 17, 2008, Facebook will no longer accept the legacy version of this method, which allowed three versions of Facebook Markup Language (FBML) within the same parameter.&amp;nbsp; The updated version of the Profile.SetFBML method will accept three separate parameters to limit unnecessary parsing, which will ease profile load times.&lt;/p&gt; &lt;p&gt;Using the Facebook Developer Toolkit, the previous call of &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;FBService.SetFBML(generalFBML,&amp;nbsp;FBService.UserId); &lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;now becomes&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;FBService.SetFBML(profileFBML, profileActionFBML, mobileProfileFBML, FBService.UserId); &lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;A full&amp;nbsp;example to test setting the profile FBML would look like:&lt;/p&gt; &lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; new&lt;/span&gt; &lt;span&gt;protected&lt;/span&gt; &lt;span&gt;void&lt;/span&gt; Page_Load(&lt;span&gt;object&lt;/span&gt; sender, &lt;span&gt;EventArgs&lt;/span&gt; e)&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;base&lt;/span&gt;.Api = FACEBOOK_API_KEY;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;base&lt;/span&gt;.Secret = FACEBOOK_SECRET;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;base&lt;/span&gt;.Page_Load(sender, e);&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;if&lt;/span&gt; (!IsPostBack)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&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;try&lt;br&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&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;// Use the FacebookService Component to populate Friends&lt;br&gt;&lt;/span&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; Facebook.Entity.&lt;span&gt;User&lt;/span&gt; u = FBService.GetUserInfo();&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;Collection&lt;/span&gt;&amp;lt;Facebook.Entity.&lt;span&gt;User&lt;/span&gt;&amp;gt; f = FBService.GetFriends();&lt;br&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;//Test Get/Set FBML (Profile parameter)&lt;br&gt;&lt;/span&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;string&lt;/span&gt; userMessage = &lt;span&gt;string&lt;/span&gt;.Format(&lt;span&gt;"Hello, {0}, you have {1} friends!"&lt;/span&gt;, u.Name, f.Count);&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; FBService.SetFBML(userMessage, &lt;span&gt;null&lt;/span&gt;, &lt;span&gt;null&lt;/span&gt;, FBService.UserId);&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; lblHelloWorld.Text = FBService.GetFBML(FBService.UserId);&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;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;catch&lt;/span&gt; (&lt;span&gt;Exception&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; {&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;// do error handling&lt;br&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt; &lt;p&gt;This is a breaking change for existing code, which we felt was more logical than throwing a runtime exception.&amp;nbsp; Post comments to the CodePlex site's discussion board if you have questions or comments.&lt;/p&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3612" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=7Kc2L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=7Kc2L" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=Sh5LL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=Sh5LL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=DUvgl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=DUvgl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=JrTxl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=JrTxl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=chNKL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=chNKL" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607801" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/VS+2005/default.aspx">VS 2005</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+2.0+Framework/default.aspx">.NET 2.0 Framework</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET+2.0/default.aspx">ASP.NET 2.0</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/01/15/3612.aspx</feedburner:origLink></item><item><title>Twitterlight: Silverlight 2.0 (Alpha) Twitter Mashup</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/231991031/twitterlight-silverlight-twitter-mashup-with-componentone-sapphire-controls.aspx</link><pubDate>Tue, 08 Jan 2008 22:52:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3592</guid><dc:creator>sholstad</dc:creator><slash:comments>13</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3592</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/01/08/twitterlight-silverlight-twitter-mashup-with-componentone-sapphire-controls.aspx#comments</comments><description>&lt;p&gt;&amp;nbsp;The Twitterlight Coding4Fun article &lt;a href="http://blogs.msdn.com/coding4fun/archive/2008/02/24/7883342.aspx" target="_blank"&gt;has been published&lt;/a&gt;.&amp;nbsp; I&amp;#39;ve added some updates, including url link support.&amp;nbsp; Check it out!&lt;/p&gt;
&lt;p&gt;All the source code is available, just make sure you add in references to the C1.Silverlight.dll.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Enjoy.&amp;nbsp; - steve&lt;/p&gt;
&lt;p&gt;=======================================================================&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I ended up with a bit of bench time this week, so I&amp;#39;ve been working on two projects here at Clarity: Eating Jimmy Johns like it&amp;#39;s going out of style, and immersing myself in Silverlight 1.1/2.0 and the accompanying control toolsets.&amp;nbsp; Also my foos skills apparently never left.&lt;/p&gt;
&lt;p&gt;Lately I&amp;#39;ve become a regular Twitter user (everyone: &amp;quot;hello, steve&amp;quot;), and was itching to play with the &lt;a href="http://groups.google.com/group/twitter-development-talk/web/api-documentation" target="_blank"&gt;Twitter API&lt;/a&gt;, so I set out to create&amp;nbsp;a Silverlight 1.1 mashup.&amp;nbsp; I also wanted an auto-updating page to use for viewing my tweets, without having to install a desktop app.&lt;/p&gt;
&lt;p&gt;&lt;font size="4"&gt;Visit the &lt;/font&gt;&lt;a class="" href="http://employees.claritycon.com/sholstad/twitterlight" target="_blank"&gt;&lt;font size="4"&gt;Twitterlight Alpha&lt;/font&gt;&lt;/a&gt;&lt;font size="4"&gt;.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" alt="Twitterlight Alpha" src="http://employees.claritycon.com/sholstad/blogImages/TwitterlightAlpha1.jpg" width="450" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;My goals here were:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Experience the joy of working around Silverlight cross-domain call prevention&lt;/strong&gt;.&amp;nbsp; Btw, different ports in VS count as cross-domain too.&amp;nbsp; This is achieved by hosting a local web service within your web project, which can in turn call external web services to marshal your Silverlight app its data.&amp;nbsp; I&amp;#39;m not going to step through how to do this, as tutorials are popping up like crazy on this... although most refer to the &amp;quot;Add Silverlight Link&amp;quot; step&amp;nbsp;as &amp;quot;magic&amp;quot;.&amp;nbsp; This goal was job one for me, because, while it&amp;#39;s easy&amp;nbsp;to see the initial draw to the beautiful designs created via XAML/Blend, unless true functionality can be added to these apps, this technology won&amp;#39;t spread at the speed I&amp;#39;m hoping it will.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Test drive some emerging control sets&lt;/strong&gt;.&amp;nbsp; For starters, I&amp;#39;ve used ComponentOne&amp;#39;s &lt;a href="http://labs.componentone.com/Sapphire/" target="_blank"&gt;Sapphire&lt;/a&gt;&amp;nbsp;Toolset Alpha.&amp;nbsp; My cube neighbors can vouch for a bit of the learning curve you may experience tackling an alpha release component suite, but all in all I think C1 is doing a really nice job with their controls.&amp;nbsp; Documentation and forum support are not great, but will come in time; and the coming of Blend support will only make using these controls easier.&amp;nbsp; For now, I pretty much stuck with creating all C1 controls via C#, as Intellisense helps discover what&amp;#39;s available for use.&lt;/p&gt;&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Deploy a Silverlight app&lt;/strong&gt;.&amp;nbsp; Done and done.&amp;nbsp; The apprehension I felt regarding moving away from good old &amp;quot;localhost&amp;quot; was unnecessary... The only major change required by my solution was to select the Silverlight project&amp;#39;s Web Reference to the local web service, and change the &amp;quot;Web Reference URL&amp;quot; property to the new, deployed web service location.&amp;nbsp; Copy, paste, deploy, foos.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;You will need to install the &lt;a href="http://www.microsoft.com/silverlight/license-win-dev.aspx" target="_blank"&gt;Silverlight 1.1 Alpha September Refresh&lt;/a&gt;&amp;nbsp;before running this... browser-wise I&amp;#39;ve tested in IE7 and Firefox 2.0.&amp;nbsp; And of course, you&amp;#39;ll need a &lt;a href="http://www.twitter.com/" target="_blank"&gt;Twitter&lt;/a&gt; account!&amp;nbsp; I&amp;#39;ll post the code in the near future for this app, in the meantime I plan to try some other toolsets.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Email me at &lt;a href="mailto:sholstad@claritycon.com"&gt;sholstad@claritycon.com&lt;/a&gt; with feedback.&amp;nbsp; I&amp;#39;m available on Twitter at &lt;a href="http://twitter.com/steveholstad" target="_blank"&gt;http://twitter.com/steveholstad&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Upcoming additions:&lt;/strong&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;- TinyUrl and hyperlink support&lt;br /&gt;&amp;nbsp;&amp;nbsp;- Resize to full browser size&lt;br /&gt;&amp;nbsp;&amp;nbsp;- Search for and follow other Twitterers&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Some Silverlight 1.1 / ComponentOne Sapphire Gotchas: (Updating as I go)&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;- Textboxes would not accept text(!) unless FocusManager.Initialize(this) is called on page load.&lt;br /&gt;&amp;nbsp;&amp;nbsp;- Tab does not move focus to next control, it moves focus back to the browser (enhanced silverlight keyboard support is on the way)&lt;br /&gt;&amp;nbsp;&amp;nbsp;- Cannot create password-masked TextBox, and even the workaround posted cannot work due to an alpha bug in C1 control... this explains why I have the horrendous white background/white foreground password textbox in this demo...&lt;br /&gt;&amp;nbsp;&amp;nbsp;- C1 controls are not functioning as expected in Safari&lt;br /&gt;&amp;nbsp;&amp;nbsp;- Have heard reports that Vista x64 users can&amp;#39;t view Silverlight content&lt;/p&gt;
&lt;p&gt;&lt;span class="sociallinks"&gt;Add to: | &lt;a href="http://technorati.com/faves?add=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx" target="_blank"&gt;Technorati&lt;/a&gt; | &lt;a href="http://digg.com/submit?phase=2&amp;amp;url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx" target="_blank"&gt;Digg&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx;title=Twitterlight%3A%20Silverlight%20%2F%20Twitter%20Mashup%20with%20ComponentOne%20Sapphire%20controls" target="_blank"&gt;del.icio.us&lt;/a&gt; | &lt;a href="http://myweb2.search.yahoo.com/myresults/bookmarklet?t=Twitterlight%3A%20Silverlight%20%2F%20Twitter%20Mashup%20with%20ComponentOne%20Sapphire%20controls&amp;amp;u=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx" target="_blank"&gt;Yahoo&lt;/a&gt; | &lt;a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;Url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx&amp;amp;Title=Twitterlight%3A%20Silverlight%20%2F%20Twitter%20Mashup%20with%20ComponentOne%20Sapphire%20controls" target="_blank"&gt;BlinkList&lt;/a&gt; | &lt;a href="http://www.spurl.net/spurl.php?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx&amp;amp;title=Twitterlight%3A%20Silverlight%20%2F%20Twitter%20Mashup%20with%20ComponentOne%20Sapphire%20controls" target="_blank"&gt;Spurl&lt;/a&gt; | &lt;a href="http://reddit.com/submit?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx&amp;amp;title=Twitterlight%3A%20Silverlight%20%2F%20Twitter%20Mashup%20with%20ComponentOne%20Sapphire%20controls" target="_blank"&gt;reddit&lt;/a&gt; | &lt;a href="http://www.furl.net/storeIt.jsp?t=Twitterlight%3A%20Silverlight%20%2F%20Twitter%20Mashup%20with%20ComponentOne%20Sapphire%20controls&amp;amp;u=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2008%2F01%2F08%2F3592%2Easpx" target="_blank"&gt;Furl&lt;/a&gt; | &lt;/span&gt;&lt;/p&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3592" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=7KjUL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=7KjUL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=D70oL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=D70oL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=QIN1l"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=QIN1l" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=PX2il"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=PX2il" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=MRg1L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=MRg1L" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/231991031" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/VS+2005/default.aspx">VS 2005</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+2.0+Framework/default.aspx">.NET 2.0 Framework</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET+2.0/default.aspx">ASP.NET 2.0</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Presentation+Foundation+_2800_WPF_2900_/default.aspx">Windows Presentation Foundation (WPF)</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+3.0+_2F00_+3.5+_2F00_+Silverlight/default.aspx">.NET 3.0 / 3.5 / Silverlight</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Presentation+Foundation+_2800_WPF_2900_/default.aspx">Windows Presentation Foundation (WPF)</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Twitter/default.aspx">Twitter</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2008/01/08/twitterlight-silverlight-twitter-mashup-with-componentone-sapphire-controls.aspx</feedburner:origLink></item><item><title>Ding Ding! Sandcastle Oct CTP and the Sandcastle Help File Builder</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/342786071/ding-ding-sandcastle-oct-ctp-and-the-sandcastle-help-file-builder.aspx</link><pubDate>Tue, 27 Nov 2007 23:58:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3511</guid><dc:creator>sholstad</dc:creator><slash:comments>5</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3511</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/11/27/ding-ding-sandcastle-oct-ctp-and-the-sandcastle-help-file-builder.aspx#comments</comments><description>&lt;p&gt;About a month ago, I began using the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=E82EA71D-DA89-42EE-A715-696E3A4873B2&amp;amp;displaylang=en" target="_blank"&gt;October 2007 CTP release of Sandcastle&lt;/a&gt;, Microsoft&amp;#39;s offering for generating code documentation files from existing .NET 2.0 assemblies.&amp;nbsp; The product will no doubt become the standard for generating your project&amp;#39;s docs, replacing the previously ubiquitous NDoc (which is no longer supported, partly due to &lt;a href="http://johnsbraindump.blogspot.com/2006/07/ndoc-20-is-dead.html" target="_blank"&gt;personal attacks&lt;/a&gt; directed towards chief dev Kevin Downs.&amp;nbsp; What a nice way to support his volunteer efforts, huh?).&amp;nbsp; Along the way I&amp;#39;ll try to absolutely mangle a boxing metaphor... Here we go:&lt;/p&gt;
&lt;h3&gt;Round One: Me vs. The &amp;#39;Castle Command Line&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;&lt;a class="" href="http://employees.claritycon.com/sholstad/blogimages/Don_Flamenco3.jpg"&gt;&lt;img height="95" alt="" src="http://employees.claritycon.com/sholstad/blogimages/Don_Flamenco_thumb3.jpg" width="98" align="left" border="0" /&gt;&lt;/a&gt; &lt;strong&gt;Carmen my love.. I dance so sweet for you!&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;My first encounter with Sandcastle was a knockdown, drag out tussle with lack of documentation and the joys of the command line, but I stuck it out in honor of our comrades from the 1980&amp;#39;s and beyond... sarcasm aside, I was pleasantly surprised by the output of the tool.&amp;nbsp; The docs were professional looking, and with some love could have been presentable to our clients if needed. (I was only looking to generate some docs to give our dev team an easy to way see how our previous committment to full code documentation was shaping up)&lt;/p&gt;
&lt;p&gt;Decision: It was easy to tell this was going to become a powerful tool in the near future, but was still on the undercard with the hairy 300lb guy they pulled out of a bar... or maybe that&amp;#39;s just the Cedar Rapids circuit?&lt;/p&gt;
&lt;h3&gt;Round Two: Introducing the Sandcastle Help File Builder&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a class="" href="http://employees.claritycon.com/sholstad/blogimages/180pxSoda_Popinski3.jpg"&gt;&lt;img height="78" alt="" src="http://employees.claritycon.com/sholstad/blogimages/180pxSoda_Popinski_thumb3.jpg" width="96" align="left" border="0" /&gt;&lt;/a&gt;Would you like some punch to drink?&amp;nbsp; Ha Ha Ha!&amp;nbsp;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Once my team decided we needed a complete snapshot of our code-level XML documentation, I was thinking of the best way to create one help file for all assemblies, that included our custom comments and offered the functionality and usability NDoc had provided for so long, all without the painful command line monotony I envisioned.&amp;nbsp; Lo and behold, Eric Woodruff&amp;#39;s &lt;a href="http://www.codeplex.com/SHFB" target="_blank"&gt;NDoc-style GUI&lt;/a&gt; appeared.&amp;nbsp; Yes, I see the irony of Microsoft trumping an open source project with it&amp;#39;s own offering, only to have a UI created that is a mimic of the original.... but hey, what works, lives.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;The GUI tool relies on the Sandcastle &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=E82EA71D-DA89-42EE-A715-696E3A4873B2&amp;amp;displaylang=en" target="_blank"&gt;2007 October CTP&lt;/a&gt;, the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=00535334-c8a6-452f-9aa0-d597d16580cc&amp;amp;displaylang=en" target="_blank"&gt;HTML Help Workshop&lt;/a&gt; for building HTML help files, and the HTML Help 2.0 compiler just as the command line utilities do, but wraps all this in a clean, intuitive interface.&amp;nbsp; I simple enabled our projects to produce&amp;nbsp;XML document outputs (via the Project Property --&amp;gt; Build tab), and referenced these output files using the UI tool.&amp;nbsp; It took about 40 minutes for the help documents to compile, but afterwards we had&amp;nbsp;a web site and generated help docs for our team to review for missing comments.&amp;nbsp; The web site is slow and clunky, but I&amp;#39;ve got a little man-crush going with the .chm.&amp;nbsp; Puppy love I guess.&amp;nbsp; And imagine the help a full .chm file could be to an incoming team member.&amp;nbsp; At some point this will become a client-worthy offering that a lot of consultants may not take the time to produce, so this tool has become a nice value-add in my .NET toolbelt.&lt;/p&gt;
&lt;p&gt;Decision: Sancastle with the CodePlex GUI are prepped for the spotlight, stay tuned to see how these products evolve.&lt;/p&gt;
&lt;p&gt;&lt;a class="" href="http://employees.claritycon.com/sholstad/blogimages/Sandcastle110.jpg"&gt;&lt;img height="300" alt="Sandcastle Help File Builder" src="http://employees.claritycon.com/sholstad/blogimages/Sandcastle1_thumb8.jpg" width="400" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;h3&gt;Round Three: Gratuitous Bald Bull&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a class="" href="http://employees.claritycon.com/sholstad/blogimages/Bald_Bull3.jpg"&gt;&lt;img height="90" alt="" src="http://employees.claritycon.com/sholstad/blogimages/Bald_Bull_thumb3.jpg" width="94" align="left" border="0" /&gt;&lt;/a&gt; My barber didn&amp;#39;t know when to quit... Do you?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Okay, okay, I&amp;#39;m done... calm down.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Must-have Mike Tyson Punch Out references:&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Little_Mac#Little_Mac"&gt;http://en.wikipedia.org/wiki/Little_Mac#Little_Mac&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;span class="sociallinks"&gt;Add to: | &lt;a href="http://technorati.com/faves?add=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx" target="_blank"&gt;Technorati&lt;/a&gt; | &lt;a href="http://digg.com/submit?phase=2&amp;amp;url=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx" target="_blank"&gt;Digg&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx;title=Ding%20Ding%21%20Sandcastle%20Oct%20CTP%20and%20the%20Sandcastle%20Help%20File%20Builder" target="_blank"&gt;del.icio.us&lt;/a&gt; | &lt;a href="http://myweb2.search.yahoo.com/myresults/bookmarklet?t=Ding%20Ding%21%20Sandcastle%20Oct%20CTP%20and%20the%20Sandcastle%20Help%20File%20Builder&amp;amp;u=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx" target="_blank"&gt;Yahoo&lt;/a&gt; | &lt;a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;Url=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx&amp;amp;Title=Ding%20Ding%21%20Sandcastle%20Oct%20CTP%20and%20the%20Sandcastle%20Help%20File%20Builder" target="_blank"&gt;BlinkList&lt;/a&gt; | &lt;a href="http://www.spurl.net/spurl.php?url=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx&amp;amp;title=Ding%20Ding%21%20Sandcastle%20Oct%20CTP%20and%20the%20Sandcastle%20Help%20File%20Builder" target="_blank"&gt;Spurl&lt;/a&gt; | &lt;a href="http://reddit.com/submit?url=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx&amp;amp;title=Ding%20Ding%21%20Sandcastle%20Oct%20CTP%20and%20the%20Sandcastle%20Help%20File%20Builder" target="_blank"&gt;reddit&lt;/a&gt; | &lt;a href="http://www.furl.net/storeIt.jsp?t=Ding%20Ding%21%20Sandcastle%20Oct%20CTP%20and%20the%20Sandcastle%20Help%20File%20Builder&amp;amp;u=https%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F27%2F3511%2Easpx" target="_blank"&gt;Furl&lt;/a&gt; | &lt;/span&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3511" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=nNno0J"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=nNno0J" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=wZatBJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=wZatBJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=UCcQPj"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=UCcQPj" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=vS4rgj"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=vS4rgj" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=w4v93J"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=w4v93J" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/342786071" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Project+Management/default.aspx">Project Management</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/VS+2005/default.aspx">VS 2005</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+2.0+Framework/default.aspx">.NET 2.0 Framework</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET+2.0/default.aspx">ASP.NET 2.0</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Project+Management/default.aspx">Project Management</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/11/27/ding-ding-sandcastle-oct-ctp-and-the-sandcastle-help-file-builder.aspx</feedburner:origLink></item><item><title>OpenSocial Google API Release taking on Facebook</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607805/3422.aspx</link><pubDate>Thu, 01 Nov 2007 12:34:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3422</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3422</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/11/01/3422.aspx#comments</comments><description>&lt;P&gt;&lt;IMG src="http://www.webholstad.com/clarity/blogpics/googos.jpg"&gt; &lt;/P&gt;
&lt;P&gt;Today is the target launch date for Google's OpenSocial, a programming API targeting social networks such as Orkut, LinkedIn, Friendster, Plazo &amp;amp; more.&amp;nbsp; This move is intended to challenge the stranglehold Facebook currently is developing with social network programmers.&amp;nbsp; I'm not much of a Facebook fan; nothing against the site itself, I just don't have the energy anymore to constantly monitor that type of site... I did check out Orkut, which seems to be wildly popular in Brazil &amp;amp; Asia, but much like David Hasselhof's singing career, totally missed the boat in the states.&lt;/P&gt;
&lt;P&gt;Normally I don't post a lot of current event type news, but since Clarity has done so much to aid in &lt;A href="/blogs/ryan_powers/archive/2007/05/29/3149.aspx" target=_blank&gt;Facebook development&lt;/A&gt;, thought that I'd put this out there to see if any of the Facebook developers would take a look at OpenSocial and see how it stacks up.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Right now I have the feeling that:&lt;/P&gt;
&lt;P&gt;- Trying to develop on a standard platform for multiple proprietary network sites will be frustrating&lt;/P&gt;
&lt;P&gt;- If the target sites themselves aren't taking off, then why would devs commit to developing for them?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If anyone checks it out, post a quick review here.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://code.google.com/apis/opensocial" target=_blank&gt;Google's OpenSocial&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.techcrunch.com/2007/10/30/details-revealed-google-opensocial-to-be-common-apis-for-building-social-apps/" target=_blank&gt;TechCrunch breaks the news&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.nytimes.com/2007/10/31/technology/31google.html?ref=technology" target=_blank&gt;NY Times&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;span class="technoratitag"&gt;Technorati Tags:
&lt;a href="http://www.technorati.com/tag/OpenSocial" target="_blank" rel="tag" title="Link to Technorati Tag category for OpenSocial"&gt;OpenSocial&lt;/a&gt;, &lt;a href="http://www.technorati.com/tag/Google" target="_blank" rel="tag" title="Link to Technorati Tag category for Google"&gt;Google&lt;/a&gt;, &lt;a href="http://www.technorati.com/tag/API" target="_blank" rel="tag" title="Link to Technorati Tag category for API"&gt;API&lt;/a&gt;, &lt;a href="http://www.technorati.com/tag/Facebook" target="_blank" rel="tag" title="Link to Technorati Tag category for Facebook"&gt;Facebook&lt;/a&gt;&lt;/span&gt;
&lt;br /&gt;&lt;span class="delicioustag"&gt;Del.icio.us Tags:
&lt;a href="http://del.icio.us/tag/OpenSocial" target="_blank" rel="tag" title="Link to Del.icio.us Tag category for OpenSocial"&gt;OpenSocial&lt;/a&gt;, &lt;a href="http://del.icio.us/tag/Google" target="_blank" rel="tag" title="Link to Del.icio.us Tag category for Google"&gt;Google&lt;/a&gt;, &lt;a href="http://del.icio.us/tag/API" target="_blank" rel="tag" title="Link to Del.icio.us Tag category for API"&gt;API&lt;/a&gt;, &lt;a href="http://del.icio.us/tag/Facebook" target="_blank" rel="tag" title="Link to Del.icio.us Tag category for Facebook"&gt;Facebook&lt;/a&gt;&lt;/span&gt;
&lt;br /&gt;&lt;span class="sociallinks"&gt;Add to: | &lt;a href="http://technorati.com/faves?add=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx" target="_blank"&gt;Technorati&lt;/a&gt; |  &lt;a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx" target="_blank"&gt;Digg&lt;/a&gt; |  &lt;a href="http://del.icio.us/post?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx;title=OpenSocial%20Google%20API%20Release%20taking%20on%20Facebook" target="_blank"&gt;del.icio.us&lt;/a&gt; |  &lt;a href="http://myweb2.search.yahoo.com/myresults/bookmarklet?t=OpenSocial%20Google%20API%20Release%20taking%20on%20Facebook&amp;u=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx" target="_blank"&gt;Yahoo&lt;/a&gt; |  &lt;a href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx&amp;Title=OpenSocial%20Google%20API%20Release%20taking%20on%20Facebook" target="_blank"&gt;BlinkList&lt;/a&gt; |  &lt;a href="http://www.spurl.net/spurl.php?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx&amp;title=OpenSocial%20Google%20API%20Release%20taking%20on%20Facebook" target="_blank"&gt;Spurl&lt;/a&gt; |  &lt;a href="http://reddit.com/submit?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx&amp;title=OpenSocial%20Google%20API%20Release%20taking%20on%20Facebook" target="_blank"&gt;reddit&lt;/a&gt; |   &lt;a href="http://www.furl.net/storeIt.jsp?t=OpenSocial%20Google%20API%20Release%20taking%20on%20Facebook&amp;u=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F11%2F01%2F3422%2Easpx" target="_blank"&gt;Furl&lt;/a&gt; |  &lt;/span&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3422" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=wtM7L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=wtM7L" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=Uyy5L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=Uyy5L" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=rTgcl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=rTgcl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=2uOLl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=2uOLl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=Ju2jL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=Ju2jL" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607805" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Gadgets/default.aspx">Gadgets</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Gadgets/default.aspx">Gadgets</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/11/01/3422.aspx</feedburner:origLink></item><item><title>Coding4Fun: YeahTrivia client &amp; server using WCF &amp; WPF</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607806/3403.aspx</link><pubDate>Mon, 29 Oct 2007 23:43:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3403</guid><dc:creator>sholstad</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3403</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/10/29/3403.aspx#comments</comments><description>&lt;P&gt;I spent the last couple of weeks creating a posting for &lt;A href="http://blogs.msdn.com/coding4fun/archive/2007/10/29/5773166.aspx" target=_blank&gt;Coding4Fun's&lt;/A&gt; blog site, called YeahTrivia. The demo consists of a WCF client &amp;amp; server communicating via the wsDualHttpBinding channel. I used the article to learn quite a bit about implementing WCF to abstract service communication outside of an app's core code.&amp;nbsp; Learning this new design pattern is a bit intimidating:&amp;nbsp; I find that the hardest part&amp;nbsp;in shifting your thought process is to take the first step... awhile back I attended Juval Lowy's WCF class, but until now haven't had time to apply it.&lt;/P&gt;
&lt;P&gt;I'll be posting some of my favorite features of WCF and WPF as I continue to dive in. Be sure to check out the demo and tell me what you think.&lt;/P&gt;
&lt;P&gt;To start, here are the config files of the client and server I used to create a wsDualHttpBinding communication channel:&lt;/P&gt;
&lt;P&gt;Server:&lt;BR&gt;
&lt;P&gt;
&lt;DIV class=code&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;?xml&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;version&lt;/FONT&gt;&lt;FONT color=blue&gt;="1.0"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;encoding&lt;/FONT&gt;&lt;FONT color=blue&gt;="utf-8"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;?&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;configuration&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;appSettings&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;add&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;key&lt;/FONT&gt;&lt;FONT color=blue&gt;="BaseURI"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;value&lt;/FONT&gt;&lt;FONT color=blue&gt;="http://localhost:8088/Trivia"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;add&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;key&lt;/FONT&gt;&lt;FONT color=blue&gt;="QuestionLoadDelay"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;value&lt;/FONT&gt;&lt;FONT color=blue&gt;="4000"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;add&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;key&lt;/FONT&gt;&lt;FONT color=blue&gt;="QuestionTime"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;value&lt;/FONT&gt;&lt;FONT color=blue&gt;="11000"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;appSettings&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;system.serviceModel&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;services&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;service&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;name&lt;/FONT&gt;&lt;FONT color=blue&gt;="Trivia.Server.GameServer"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;behaviorConfiguration&lt;/FONT&gt;&lt;FONT color=blue&gt;="MyServiceTypeBehaviors"&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;endpoint&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;address&lt;/FONT&gt;&lt;FONT color=blue&gt;="http://localhost:8088/Trivia"&lt;/FONT&gt;&lt;FONT color=red&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;binding&lt;/FONT&gt;&lt;FONT color=blue&gt;="wsDualHttpBinding"&lt;/FONT&gt;&lt;FONT color=red&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;contract&lt;/FONT&gt;&lt;FONT color=blue&gt;="Trivia.Common.ITrivia"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;/&amp;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;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;endpoint&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;contract&lt;/FONT&gt;&lt;FONT color=blue&gt;="IMetadataExchange"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;binding&lt;/FONT&gt;&lt;FONT color=blue&gt;="mexHttpBinding"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;address&lt;/FONT&gt;&lt;FONT color=blue&gt;="mex"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;service&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;services&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;behaviors&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;serviceBehaviors&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;behavior&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;name&lt;/FONT&gt;&lt;FONT color=blue&gt;="MyServiceTypeBehaviors"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;serviceMetadata&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;httpGetEnabled&lt;/FONT&gt;&lt;FONT color=blue&gt;="true"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;/&amp;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;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;behavior&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;serviceBehaviors&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;behaviors&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;system.serviceModel&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;configuration&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;/FONT&gt; &lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Client:&lt;BR&gt;
&lt;DIV class=code&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;?xml&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;version&lt;/FONT&gt;&lt;FONT color=blue&gt;="1.0"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;encoding&lt;/FONT&gt;&lt;FONT color=blue&gt;="utf-8"?&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;configuration&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;system.serviceModel&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;bindings&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;wsDualHttpBinding&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;binding&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;name&lt;/FONT&gt;&lt;FONT color=blue&gt;="WSDualHttpBinding_ITrivia"&lt;/FONT&gt;&lt;FONT color=red&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;clientBaseAddress&lt;/FONT&gt;&lt;FONT color=blue&gt;="http://localhost:8082/Trivia/"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;closeTimeout&lt;/FONT&gt;&lt;FONT color=blue&gt;="00:01:00"&lt;/FONT&gt;&lt;FONT color=red&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;openTimeout&lt;/FONT&gt;&lt;FONT color=blue&gt;="00:01:00"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;receiveTimeout&lt;/FONT&gt;&lt;FONT color=blue&gt;="00:10:00"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;sendTimeout&lt;/FONT&gt;&lt;FONT color=blue&gt;="00:01:00"&lt;/FONT&gt;&lt;FONT color=red&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;bypassProxyOnLocal&lt;/FONT&gt;&lt;FONT color=blue&gt;="false"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;transactionFlow&lt;/FONT&gt;&lt;FONT color=blue&gt;="false"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;hostNameComparisonMode&lt;/FONT&gt;&lt;FONT color=blue&gt;="StrongWildcard"&lt;/FONT&gt;&lt;FONT color=red&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;maxBufferPoolSize&lt;/FONT&gt;&lt;FONT color=blue&gt;="524288"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;maxReceivedMessageSize&lt;/FONT&gt;&lt;FONT color=blue&gt;="65536"&lt;/FONT&gt;&lt;FONT color=red&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;messageEncoding&lt;/FONT&gt;&lt;FONT color=blue&gt;="Text"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;textEncoding&lt;/FONT&gt;&lt;FONT color=blue&gt;="utf-8"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;useDefaultWebProxy&lt;/FONT&gt;&lt;FONT color=blue&gt;="true"&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;readerQuotas&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;maxDepth&lt;/FONT&gt;&lt;FONT color=blue&gt;="32"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;maxStringContentLength&lt;/FONT&gt;&lt;FONT color=blue&gt;="8192"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;maxArrayLength&lt;/FONT&gt;&lt;FONT color=blue&gt;="16384"&lt;/FONT&gt;&lt;FONT color=red&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;maxBytesPerRead&lt;/FONT&gt;&lt;FONT color=blue&gt;="4096"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;maxNameTableCharCount&lt;/FONT&gt;&lt;FONT color=blue&gt;="16384"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;/&amp;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;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;reliableSession&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;ordered&lt;/FONT&gt;&lt;FONT color=blue&gt;="true"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;inactivityTimeout&lt;/FONT&gt;&lt;FONT color=blue&gt;="00:10:00"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;/&amp;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;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;security&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;mode&lt;/FONT&gt;&lt;FONT color=blue&gt;="Message"&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;message&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;clientCredentialType&lt;/FONT&gt;&lt;FONT color=blue&gt;="Windows"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;negotiateServiceCredential&lt;/FONT&gt;&lt;FONT color=blue&gt;="true"&lt;/FONT&gt;&lt;FONT color=red&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;&amp;nbsp;algorithmSuite&lt;/FONT&gt;&lt;FONT color=blue&gt;="Default"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;/&amp;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;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;security&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;binding&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;wsDualHttpBinding&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;bindings&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;client&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=maroon&gt;endpoint&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;address&lt;/FONT&gt;&lt;FONT color=blue&gt;="http://localhost:8088/Trivia"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;binding&lt;/FONT&gt;&lt;FONT color=blue&gt;="wsDualHttpBinding"&lt;/FONT&gt;&lt;FONT color=red&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;bindingConfiguration&lt;/FONT&gt;&lt;FONT color=blue&gt;="WSDualHttpBinding_ITrivia"&lt;/FONT&gt;&lt;FONT color=red&gt;&amp;nbsp;contract&lt;/FONT&gt;&lt;FONT color=blue&gt;="Trivia.Common.ITrivia"&lt;/FONT&gt;&lt;FONT color=red&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;name&lt;/FONT&gt;&lt;FONT color=blue&gt;="WSDualHttpBinding_ITrivia"&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&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;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;endpoint&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;client&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;system.serviceModel&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=maroon&gt;configuration&lt;/FONT&gt;&lt;FONT color=blue&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT color=black&gt;&lt;/FONT&gt; &lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;The client config contains some extra binding attributes that are optional, but I wanted to show you the exact files that were generated using the Svcutil utility.&amp;nbsp; Use Svcutil.exe to generate a proxy class which, when created and added to your client project, is used to marshal calls via WCF to the service.&amp;nbsp; To generate my client class, I started my service and ran the following at the command line:&lt;BR&gt;&lt;BR&gt;svcutil /language:cs /out:ServerProxy.cs http://localhost:8088/Trivia&lt;BR&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Not a complete solution, but should get you started in the right direction. For a working example, check out the &lt;A href="http://blogs.msdn.com/coding4fun/archive/2007/10/29/5773166.aspx" target=_blank&gt;article&lt;/A&gt; and let me know if you have any questions.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN class=technoratitag&gt;Technorati Tags: &lt;A title="Link to Technorati Tag category for Coding4Fun" href="http://www.technorati.com/tag/Coding4Fun" target=_blank rel=tag&gt;Coding4Fun&lt;/A&gt;, &lt;A title="Link to Technorati Tag category for WCF" href="http://www.technorati.com/tag/WCF" target=_blank rel=tag&gt;WCF&lt;/A&gt;, &lt;A title="Link to Technorati Tag category for WPF" href="http://www.technorati.com/tag/WPF" target=_blank rel=tag&gt;WPF&lt;/A&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN class=delicioustag&gt;Del.icio.us Tags: &lt;A title="Link to Del.icio.us Tag category for Coding4Fun" href="http://del.icio.us/tag/Coding4Fun" target=_blank rel=tag&gt;Coding4Fun&lt;/A&gt;, &lt;A title="Link to Del.icio.us Tag category for WCF" href="http://del.icio.us/tag/WCF" target=_blank rel=tag&gt;WCF&lt;/A&gt;, &lt;A title="Link to Del.icio.us Tag category for WPF" href="http://del.icio.us/tag/WPF" target=_blank rel=tag&gt;WPF&lt;/A&gt;&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN class=sociallinks&gt;Add to: | &lt;A href="http://technorati.com/faves?add=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx" target=_blank&gt;Technorati&lt;/A&gt; | &lt;A href="http://digg.com/submit?phase=2&amp;amp;url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx" target=_blank&gt;Digg&lt;/A&gt; | &lt;A href="http://del.icio.us/post?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx;title=Coding4Fun%3A%20YeahTrivia%20client%20%26%20server%20using%20WCF%20%26%20WPF" target=_blank&gt;del.icio.us&lt;/A&gt; | &lt;A href="http://myweb2.search.yahoo.com/myresults/bookmarklet?t=Coding4Fun%3A%20YeahTrivia%20client%20%26%20server%20using%20WCF%20%26%20WPF&amp;amp;u=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx" target=_blank&gt;Yahoo&lt;/A&gt; | &lt;A href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;Url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx&amp;amp;Title=Coding4Fun%3A%20YeahTrivia%20client%20%26%20server%20using%20WCF%20%26%20WPF" target=_blank&gt;BlinkList&lt;/A&gt; | &lt;A href="http://www.spurl.net/spurl.php?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx&amp;amp;title=Coding4Fun%3A%20YeahTrivia%20client%20%26%20server%20using%20WCF%20%26%20WPF" target=_blank&gt;Spurl&lt;/A&gt; | &lt;A href="http://reddit.com/submit?url=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx&amp;amp;title=Coding4Fun%3A%20YeahTrivia%20client%20%26%20server%20using%20WCF%20%26%20WPF" target=_blank&gt;reddit&lt;/A&gt; | &lt;A href="http://www.furl.net/storeIt.jsp?t=Coding4Fun%3A%20YeahTrivia%20client%20%26%20server%20using%20WCF%20%26%20WPF&amp;amp;u=http%3A%2F%2Fblogs%2Eclaritycon%2Ecom%2Fblogs%2Fsteve%5Fholstad%2Farchive%2F2007%2F10%2F29%2F3403%2Easpx" target=_blank&gt;Furl&lt;/A&gt; | &lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3403" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=R1IhL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=R1IhL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=HcmoL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=HcmoL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=QjhOl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=QjhOl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=n6P3l"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=n6P3l" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=xZX6L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=xZX6L" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607806" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Forms/default.aspx">Windows Forms</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Communication+Foundation+_2800_WCF_2900_/default.aspx">Windows Communication Foundation (WCF)</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Presentation+Foundation+_2800_WPF_2900_/default.aspx">Windows Presentation Foundation (WPF)</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Forms/default.aspx">Windows Forms</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Communication+Foundation+_2800_WCF_2900_/default.aspx">Windows Communication Foundation (WCF)</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Presentation+Foundation+_2800_WPF_2900_/default.aspx">Windows Presentation Foundation (WPF)</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/10/29/3403.aspx</feedburner:origLink></item><item><title>Apple to provide SDK &amp; allow 3rd party apps on iPhone</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607807/3327.aspx</link><pubDate>Thu, 18 Oct 2007 14:41:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3327</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3327</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/10/18/3327.aspx#comments</comments><description>&lt;P&gt;Wow, it's been awhile, and I apologize for the delay in posts.&amp;nbsp; I took some time off to get married and head off to Greece... amazing times.&lt;/P&gt;
&lt;P&gt;Now that I'm back,&amp;nbsp;I thought I'd take a moment to pass on some interesting news:&amp;nbsp; Apple is releasing a first SDK in February that will allow developers to create and install 3rd party applications onto the iPhone.&amp;nbsp; This means some exciting times for you pretty Mac devs out there... &lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.cnn.com/2007/TECH/ptech/10/17/apple.iphone.ap/index.html" target=_blank&gt;CNN's report&lt;/A&gt; makes a good point: that this is most likely a reactionary move to stop the bad publicity they've received from scores of iPhone owners looking for a more customized experience.&lt;/P&gt;
&lt;P&gt;As some of you may know, I've been a late-adopter to many things Apple, but this is one more piece that may have me carrying an iPhone sooner than later (at least once an faster network is supported).&lt;/P&gt;
&lt;P&gt;Comments welcome!&lt;/P&gt;
&lt;P&gt;steve&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;DIV class=tagLink&gt;&lt;A href="http://technorati.com/tag/Apple" rel=tag&gt;Apple&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV class=tagLink&gt;&lt;A href="http://technorati.com/tag/iPhone" rel=tag&gt;iPhone&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV class=tagLink&gt;&lt;A href="http://technorati.com/tag/Mobile" rel=tag&gt;Mobile&lt;/A&gt;&lt;/DIV&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3327" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=ZIFCL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=ZIFCL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=ctKXL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=ctKXL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=FS5Ul"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=FS5Ul" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=qsHHl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=qsHHl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=mHG0L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=mHG0L" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607807" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Gadgets/default.aspx">Gadgets</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Gadgets/default.aspx">Gadgets</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/10/18/3327.aspx</feedburner:origLink></item><item><title>WhatWG, W3C and HTML 5.0</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607808/3263.aspx</link><pubDate>Thu, 16 Aug 2007 03:33:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3263</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3263</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/08/15/3263.aspx#comments</comments><description>&lt;P&gt;&lt;FONT face=Verdana&gt;It's an interesting exercise every once in a while to take a look at the technologies we use in everyday development, and how they evolve over time. I started out writing HTML 4.0 &amp;amp; ASP 3.0 apps in high school, then watched as .NET 1.0, 1.1 and 2.0 became entwined in our vocabulary. Sitting here tonight, I'm writing some test apps using VS 2008 Orcas and HTML 4.0. Wait a tic, what happened with HTML's progression? Think of all the incredible web technology that has sprouted in the last 10 years: it's all been so exciting and glittery that everyone was deked into advancing other areas like scripting, AJAX &amp;amp; CSS. The last release of an HTML spec was released in July 1997. I'm not here to trash a standard we've all learned to love, but everyone who's ever programmed a web page can see some improvements could be made: think "DIVitis", for one. Surprised it took this long? Me too.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;The cavalry is coming. The WhatWG (Web Hypertext Application Technology Working Group) was formed by an association of Apple, Opera &amp;amp; Mozilla browser vendors and independent web developers, with a goal of updating the hypertext markup language specs to support some much needed updates. The group formed in 2004 after they became concerned about the W3C's lack of direction and support for the everyday developer. A major concern for me is the fourth name you don't see as a founder of the WhatWG group. Microsoft IE definitely is the elephant in the room when we're talking about upgrades and standardization. The good news is that the W3C has picked up the call, and the WhatWG and W3C working drafts of HTML 5 are now advancing in tandem. Still, the WhatWG blogs state that the spec is being developed with IE compatibility in mind, and that many features can be supported in IE using JavaScript workarounds...what a potentially painful annoyance for developers. Standardization: so close, yet so far away.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;On a quick side note: Some writers have pointed out that until the next generation of browsers update their HTML rendering engines, any upgrades to the spec are useless; It's pretty obvious to me that this is a classic "cart before the horse" worry... how are vendors supposed to support a format that is not yet formalized? Plus, being that three of the big four browser vendors founded the group is a clear sign that they are preparing to make upcoming browsers support the latest HTML.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;The HTML 5.0 spec is being developed using a three-pronged approach. WhatWG sums the branches up nicely: &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;&lt;FONT face=Verdana&gt;The work is currently split between three specifications.&lt;BR&gt;&lt;BR&gt;Web Forms 2.0 is targeted to the common needs of web authors. Advanced widgets like RTF controls, menus and toolbars are the domain of Web Applications 1.0. These drafts are in active development. Web Forms 2 is nearing maturity; proposals are currently being discussed and specified for Web Applications 1.&lt;BR&gt;&lt;BR&gt;Web Controls 1.0 is intended to add functionality to Javascript and CSS that aid the creation of custom widgets. However, this will be influenced by the design and implementations of XBL2, and so will not be available in the near future.&lt;/FONT&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;I'm not diving into a code sample here, because A) the constructs are still changing frequently, b) c'mon, I'm planning a wedding here, and c) Elliotte Harold does a really nice job of it &lt;/FONT&gt;&lt;A href="http://www.ibm.com/developerworks/library/x-html5/?ca=dgr-lnxw01NewHTML" target=_blank&gt;&lt;FONT face=Verdana&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt;. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;You can start developing sites using these standards once browsers begin to support them, even though the final recommendation won't come until the implementation is complete; be wary of changes until then. Keep an eye out for browser betas that allow testing of these new capabilities. The spec is fully backward compatible, so old browsers will continue to display content as expected. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;Some references:&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.ibm.com/developerworks/library/x-html5/?ca=dgr-lnxw01NewHTML"&gt;&lt;FONT face=Verdana&gt;Elliotte Harold's review of HTML 5.0&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;A href="http://blog.whatwg.org/faq/#whattf"&gt;&lt;FONT face=Verdana&gt;WhatWG's FAQ Blog&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;A href="http://www.whatwg.org/specs/web-apps/current-work/"&gt;&lt;FONT face=Verdana&gt;WhatWG's working spec&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;A href="http://www.w3.org/html/wg/html5/"&gt;&lt;FONT face=Verdana&gt;W3C's working spec&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt; &lt;/FONT&gt;&lt;/P&gt;&lt;BR&gt;&lt;BR&gt;
&lt;P&gt;&lt;A href="http://technorati.com/tag/HTML" rel=tag&gt;HTML&lt;/A&gt;&lt;A href="http://technorati.com/tag/HTML+5.0" rel=tag&gt;HTML 5.0&lt;/A&gt; &lt;A href="http://technorati.com/tag/W3C" rel=tag&gt;W3C&lt;/A&gt; &lt;A href="http://technorati.com/tag/WhatWG" rel=tag&gt;WhatWG&lt;/A&gt; &lt;A href="http://technorati.com/tag/Web+Programming" rel=tag&gt;Web Programming&lt;/A&gt; &lt;A href="http://technorati.com/tag/ASP" rel=tag&gt;ASP&lt;/A&gt; &lt;/P&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3263" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=bRQEL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=bRQEL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=R0lbL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=R0lbL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=ksjhl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=ksjhl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=eBn0l"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=eBn0l" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=b1D6L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=b1D6L" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607808" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET+2.0/default.aspx">ASP.NET 2.0</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Non-Microsoft+Products/default.aspx">Non-Microsoft Products</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/08/15/3263.aspx</feedburner:origLink></item><item><title>Using AppDomain to Load and Unload Dynamic Assemblies</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607809/3212.aspx</link><pubDate>Thu, 28 Jun 2007 23:56:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3212</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3212</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/06/28/3212.aspx#comments</comments><description>&lt;p&gt;
Recently a project I was working on required us to dynamically load an assembly at runtime, and invoke a method on the newly loaded assembly.  After we had this working, I 

noticed that when we tried to then load a newer version of the dynamic assembly, the newer bits weren't being picked up, and old code was executing.  Time to investigate a 

bit further:&lt;/p&gt;

&lt;p&gt;
I came across a great &lt;a href="http://www.devsource.com/article2/0,1895,1790388,00.asp" target="_blank"&gt;article&lt;/a&gt; by Jon Shemitz that pointed me in the right direction.  

AppDomains are a powerful concept in .NET, however as most applications you write live within a single AppDomain, you may not have noticed them before.  My problem was that 

in .NET, you cannot simply unload an assembly directly.  However, if we were to create a new AppDomain, load our dynamic assembly within it, call the methods needed, and 

then unload the AppDomain, we could load, unload, update versions and reload until our hearts content.  The final piece of our puzzle (that we already had in place) is to 

use an interface to allow us the ability to invoke methods on the loaded assembly from our manager executable.&lt;/p&gt;

&lt;p&gt;The solution I've created to demonstrate this concept uses four projects:&lt;br /&gt;&lt;br /&gt;
AppDomainLoad: A basic console application that simply news up an instance of the Manager class and calls the entry method.&lt;br /&gt;&lt;br /&gt;

WorkerShared: This project holds any objects that will be used by both the Manager and Worker classes.  This is the only assembly that will be loaded by both AppDomains.  

Our shared interface, IWorker, lives in this project.  A utility class calls 
AppDomain.CurrentDomain.GetAssemblies() to let us know what really is being loaded at runtime.  This is a handy method to use, even in standard single AppDomain 

applications, to ensure you only load what you need.&lt;br /&gt;&lt;br /&gt;

WorkerManager: The .dll that creates a separate AppDomain, loads an instance of the dynamic assembly, and casts this instance to the IWorker interface.  After all this, the 

Manager simply calls a method available from the interface.  Once the work is complete, the AppDomain is unloaded, which drops any assemblies loaded within the worker 

domain.&lt;br /&gt;&lt;br /&gt;

DisconnectedWorker: Where the rubber hits the road, this project executes the actual work.  The worker class a) implements the IWorker interface b) derives from 

MarshalByRefObject, which allows access to objects across domain boundaries (because these interactions are basically remoting under the covers), and c) is marked as 

Serializable.&lt;br /&gt;&lt;br /&gt;

One final note, after building the projects, I placed the WorkerShared.dll and DisconnectedWorker.dll bits into the C:\BlogProjects\AssemblyPool directory.  This is only to 

simplify the project code; your project can locate these assemblies however you need.  For this example, create the directory and drop the assemblies.
&lt;/p&gt;

&lt;p&gt;Here's &lt;a href="http://www.webholstad.com/Clarity/AppDomain/LoadDynamicAssembly.zip"&gt;the example code&lt;/a&gt;.  The key classes' code is shown below.  Let me know if you 

have any questions.&lt;/p&gt;

&lt;p&gt;
&lt;h3&gt;IWorker interface&lt;/h3&gt;
&lt;div class='code'&gt;
&lt;font color='blue'&gt;namespace&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;WorkerShared&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;public&amp;nbsp;interface&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;IWorker&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Define&amp;nbsp;required&amp;nbsp;methods:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;void&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DoWork()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/font&gt;
	&lt;/div&gt;
	

&lt;h3&gt;WorkerManager&lt;/h3&gt;
&lt;div class='code'&gt;
&lt;font color='blue'&gt;using&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;System&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
using&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;WorkerShared&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&lt;br /&gt;
namespace&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;WorkerManager&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;public&amp;nbsp;class&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Manager&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;CONFIG_ASSEMBLY_POOL&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;@"C:\BlogProjects\AssemblyPool"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;CONFIG_DYNAMIC_ASSEMBLY_PROJECT&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"DisconnectedWorker"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;CONFIG_DYNAMIC_ASSEMBLY_FULLY_QUALIFIED_NAME&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"DisconnectedWorker.Worker"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FORMAT_WORKER_DOMAIN_FRIENDLY_NAME&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Dynamic&amp;nbsp;Worker&amp;nbsp;Domain"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FORMAT_WORKER_DOMAIN_CREATED&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Created&amp;nbsp;'{0}'&amp;nbsp;AppDomain"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FORMAT_WORKER_DOMAIN_UNLOADED&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Unloaded&amp;nbsp;'{0}'&amp;nbsp;AppDomain"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FORMAT_WORK_COMPLETE&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"All&amp;nbsp;work&amp;nbsp;complete."&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FORMAT_START_ASSEMBLIES&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Starting&amp;nbsp;Assemblies&amp;nbsp;Loaded:"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FORMAT_END_ASSEMBLIES&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Post-unload&amp;nbsp;Assemblies&amp;nbsp;Loaded:"&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;void&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;RunAppDomainExample()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Show&amp;nbsp;current&amp;nbsp;assemblies&amp;nbsp;before&amp;nbsp;we&amp;nbsp;start:&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(FORMAT_START_ASSEMBLIES)&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;Utilities.WriteCurrentLoadedAssemblies()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;create&amp;nbsp;display&amp;nbsp;name&amp;nbsp;for&amp;nbsp;appDomain&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;&lt;/font&gt;&lt;font color='blue'&gt;string&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;workerName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;string&lt;/font&gt;&lt;font color='black'&gt;.Format(FORMAT_WORKER_DOMAIN_FRIENDLY_NAME)&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Construct&amp;nbsp;and&amp;nbsp;setup&amp;nbsp;appDomain&amp;nbsp;settings:&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;&lt;/font&gt;&lt;font color='black'&gt;AppDomainSetup&amp;nbsp;ads&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;new&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;AppDomainSetup()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='black'&gt;ads.ApplicationBase&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;CONFIG_ASSEMBLY_POOL&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;ads.DisallowBindingRedirects&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;false;&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;&lt;/font&gt;&lt;font color='black'&gt;ads.DisallowCodeDownload&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;true;&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;&lt;/font&gt;&lt;font color='black'&gt;ads.ConfigurationFile&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;AppDomain.CurrentDomain.SetupInformation.ConfigurationFile&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Create&amp;nbsp;domain&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine()&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;AppDomain&amp;nbsp;workerAppDomain&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;AppDomain.CreateDomain(workerName,&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;null&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;ads)&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(FORMAT_WORKER_DOMAIN_CREATED,&amp;nbsp;workerName)

&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;do&amp;nbsp;work&amp;nbsp;on&amp;nbsp;proxy&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;&lt;/font&gt;&lt;font color='black'&gt;IWorker&amp;nbsp;workerInstance&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;(IWorker)&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;workerAppDomain.CreateInstanceAndUnwrap(CONFIG_DYNAMIC_ASSEMBLY_PROJECT,&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;&amp;nbsp;&amp;nbs

p;&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;CONFIG_D

YNAMIC_ASSEMBLY_FULLY_QUALIFIED_NAME)&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Execute&amp;nbsp;the&amp;nbsp;task&amp;nbsp;by&amp;nbsp;invoking&amp;nbsp;method&amp;nbsp;on&amp;nbsp;the&amp;nbsp;interface&amp;nbsp;instance&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;&lt;/font&gt;&lt;font color='black'&gt;workerInstance.DoWork()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Unload&amp;nbsp;worker&amp;nbsp;appDomain&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;&lt;/font&gt;&lt;font color='black'&gt;AppDomain.Unload(workerAppDomain)&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(FORMAT_WORKER_DOMAIN_UNLOADED,&amp;nbsp;workerName)

&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Show&amp;nbsp;current&amp;nbsp;assemblies&amp;nbsp;before&amp;nbsp;we&amp;nbsp;start:&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(FORMAT_END_ASSEMBLIES)&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;Utilities.WriteCurrentLoadedAssemblies()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(FORMAT_WORK_COMPLETE)&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;Console.ReadLine()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/font&gt;
	&lt;/div&gt;


&lt;h3&gt;DisconnectedWorker&lt;/h3&gt;
&lt;div class='code'&gt;
&lt;font color='blue'&gt;using&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;System&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
using&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;WorkerShared&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&lt;br /&gt;
namespace&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DisconnectedWorker&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Serializable]&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;public&amp;nbsp;class&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Worker&amp;nbsp;:&amp;nbsp;MarshalByRefObject,&amp;nbsp;IWorker&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;public&amp;nbsp;void&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DoWork()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&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;&lt;/font&gt;&lt;font color='darkgreen'&gt;//&amp;nbsp;Show&amp;nbsp;the&amp;nbsp;assemblies&amp;nbsp;loaded&amp;nbsp;in&amp;nbsp;this&amp;nbsp;appDomain&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;&lt;/font&gt;&lt;font color='black'&gt;Utilities.WriteCurrentLoadedAssemblies()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/font&gt;
	&lt;/div&gt;

&lt;h3&gt;Utilities&lt;/h3&gt;
&lt;div class='code'&gt;
&lt;font color='blue'&gt;using&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;System&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
using&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;System.Reflection&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&lt;br /&gt;
namespace&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;WorkerShared&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;public&amp;nbsp;static&amp;nbsp;class&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Utilities&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;public&amp;nbsp;static&amp;nbsp;void&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;WriteCurrentLoadedAssemblies()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&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;Assembly[]&amp;nbsp;assemblies&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;AppDomain.CurrentDomain.GetAssemblies()&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&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;foreach&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;(Assembly&amp;nbsp;assembly&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;in&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;assemblies)&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;{&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;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"Loaded:&amp;nbsp;

{0}."&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;assembly.ManifestModule.Name)&lt;/font&gt;&lt;font color='blue'&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;&lt;/font&gt;&lt;font color='black'&gt;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/font&gt;
	&lt;/div&gt;

&lt;h3&gt;Payday: The Project Output&lt;/h3&gt;
&lt;div&gt;
Starting Assemblies Loaded:&lt;br /&gt;
Loaded: mscorlib.dll.&lt;br /&gt;
Loaded: Microsoft.VisualStudio.HostingProcess.Utilities.dll.&lt;br /&gt;
Loaded: System.Windows.Forms.dll.&lt;br /&gt;
Loaded: System.dll.&lt;br /&gt;
Loaded: System.Drawing.dll.&lt;br /&gt;
Loaded: Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll.&lt;br /&gt;
Loaded: AppDomainLoad.vshost.exe.&lt;br /&gt;
Loaded: System.Data.dll.&lt;br /&gt;
Loaded: System.Xml.dll.&lt;br /&gt;
Loaded: AppDomainLoad.exe.&lt;br /&gt;
Loaded: WorkerManager.dll.&lt;br /&gt;
Loaded: WorkerShared.dll.&lt;br /&gt;&lt;br /&gt;

Created 'Dynamic Worker Domain' AppDomain&lt;br /&gt;
Loaded: mscorlib.dll.&lt;br /&gt;
Loaded: Microsoft.VisualStudio.HostingProcess.Utilities.dll.&lt;br /&gt;
Loaded: DisconnectedWorker.dll.&lt;br /&gt;
Loaded: WorkerShared.dll.&lt;br /&gt;
Unloaded 'Dynamic Worker Domain' AppDomain&lt;br /&gt;&lt;br /&gt;

Post-unload Assemblies Loaded:&lt;br /&gt;
Loaded: mscorlib.dll.&lt;br /&gt;
Loaded: Microsoft.VisualStudio.HostingProcess.Utilities.dll.&lt;br /&gt;
Loaded: System.Windows.Forms.dll.&lt;br /&gt;
Loaded: System.dll.&lt;br /&gt;
Loaded: System.Drawing.dll.&lt;br /&gt;
Loaded: Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll.&lt;br /&gt;
Loaded: AppDomainLoad.vshost.exe.&lt;br /&gt;
Loaded: System.Data.dll.&lt;br /&gt;
Loaded: System.Xml.dll.&lt;br /&gt;
Loaded: AppDomainLoad.exe.&lt;br /&gt;
Loaded: WorkerManager.dll.&lt;br /&gt;
Loaded: WorkerShared.dll.&lt;br /&gt;
All work complete.&lt;br /&gt;
&lt;/div&gt;


&lt;/p&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3212" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=AWx8L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=AWx8L" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=kpOlL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=kpOlL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=Srthl"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=Srthl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=Hesul"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=Hesul" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=ZStEL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=ZStEL" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607809" height="1" width="1"/&gt;</description><enclosure url="http://blogs.claritycon.com/blogs/steve_holstad/attachment/3212.ashx" length="69614" type="application/x-zip-compressed" /><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Forms/default.aspx">Windows Forms</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/VS+2005/default.aspx">VS 2005</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/.NET+2.0+Framework/default.aspx">.NET 2.0 Framework</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/ASP.NET+2.0/default.aspx">ASP.NET 2.0</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Windows+Forms/default.aspx">Windows Forms</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/06/28/3212.aspx</feedburner:origLink></item><item><title>Good old blurry pics</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607810/3094.aspx</link><pubDate>Wed, 02 May 2007 01:01:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3094</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3094</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/05/01/3094.aspx#comments</comments><description>&lt;P&gt;Well, that pretty much wraps up MIX 2007. What a great showing by Microsoft. Keeping with Clarity tradition, thought I should throw up a few fuzzy pics:&lt;BR&gt;&lt;BR&gt;
&lt;DIV&gt;
&lt;P&gt;&lt;IMG alt="Mix Main Room screens" src="http://www.webholstad.com/clarity/blogpics/Mix_Main.jpg" width=300&gt;&lt;BR&gt;Keynote conference layout &lt;/P&gt;
&lt;P&gt;&lt;IMG alt="Mix Main Room screens" src="http://www.webholstad.com/clarity/blogpics/Mix_Guitar.jpg" width=300&gt;&lt;BR&gt;Guitar Hero and Gears of War got a LOT of attention.&amp;nbsp; Is this the defining geek image of our generation? &lt;/P&gt;
&lt;P&gt;&lt;IMG alt="Mix Main Room screens" src="http://www.webholstad.com/clarity/blogpics/Mix_Marshall.jpg" width=300&gt;&lt;BR&gt;This is your shirt. This is your shirt when you fly Southwest. Any questions? &lt;/P&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;/P&gt;
&lt;DIV class=tagLink&gt;&lt;A href="http://technorati.com/tag/MIX07" rel=tag&gt;MIX07&lt;/A&gt; &lt;/DIV&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3094" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=7BvhL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=7BvhL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=DF87L"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=DF87L" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=2HMil"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=2HMil" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=WXX4l"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=WXX4l" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=TfypL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=TfypL" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~4/229607810" height="1" width="1"/&gt;</description><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Dev+Community/default.aspx">Dev Community</category><category domain="http://blogs.claritycon.com/blogs/steve_holstad/archive/tags/Tech+Reads/default.aspx">Tech Reads</category><feedburner:origLink>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/05/01/3094.aspx</feedburner:origLink></item><item><title>ASP.NET AJAX Tips &amp; Tricks</title><link>http://feeds.feedburner.com/~r/ClarityBlogs/SteveHolstad/~3/229607811/3093.aspx</link><pubDate>Wed, 02 May 2007 00:38:00 GMT</pubDate><guid isPermaLink="false">da947a97-509e-40e6-bbb5-1443ad47bf4e:3093</guid><dc:creator>sholstad</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.claritycon.com/blogs/steve_holstad/rsscomments.aspx?PostID=3093</wfw:commentRss><comments>http://blogs.claritycon.com/blogs/steve_holstad/archive/2007/05/01/3093.aspx#comments</comments><description>&lt;P&gt;My final session of Tuesday was a deep dive on ASP.NET AJAX, with Jeff Prosise, co-founder of Wintellect and Matt Gibbs, Development Manager at Microsoft.&lt;/P&gt;
&lt;P&gt;Jeff and Matt did an excellent job of challenging the advanced AJAX guys while still engaging coders with less experience using the ASP.NET AJAX libraries. These two guys seemed to get along really well, and (are you sitting down?) the banter between them was friendly and funny... not that common of a combination from my experience with major conference presentations. The expertise of ASP.NET AJAX they showed by easily handling difficult questions sold me, I'll be checking their blogs from now on.&lt;/P&gt;
&lt;P&gt;Code-wise, these two didn't so much deep dive into one particular example, but instead provided "seed" information that I plan to research after the conference. In fact, I left not quite sure what specific points I could write about here, but I am positive that I just accumulated a lot of great tips &amp;amp; tricks that may come up with my clients in the future. A few tips: 
&lt;UL&gt;
&lt;LI&gt;When using multiple UpdatePanels per page, start getting into the habit of setting the UpdateMode flag to "Conditional". This prevents non-updated panels from sending their contents (viewstate, etc) up the pipe. No need to send this traffic unless the content needs to be updated, right? Keep in mind that with this method, if UpdatePanel A needs to update whenever UpdatePanel C is changed, you'll have to explicitly call UpdatePanel A's Update method in the managed code (&lt;SPAN&gt;example: PanelA.Update();&lt;/SPAN&gt;) 
&lt;LI&gt;Immediately go and download &lt;A href="http://projects.nikhilk.net/Projects/WebDevHelper.aspx" target=_blank&gt;Nikhil Kothari's Web Development Helper&lt;/A&gt; Utility. What a great tool for watching your asynch postbacks firing client-server: turn logging on and start reducing your&amp;nbsp;traffic size.&lt;BR&gt;
&lt;LI&gt;The ASP.NET AJAX library .pdb files are now available, add 'em to your project to allow debugging into the libraries themselves. Email Matt if you see any bugs.&lt;BR&gt;
&lt;LI&gt;I will forever be stealing the phrase "New it up" to mean instantiating an object. It's stuck in my head forever, much like Bonnie Tyler's "Total Eclipse of the Heart". 
&lt;LI&gt;An UpdatePanel's brain actually lies within the System.WebForms.PageRequestManager class, so take a look at leveraging it's events to manipulate your partial page updates:&lt;BR&gt;&lt;BR&gt;&lt;SPAN&gt;var mgr = System.WebForms.PageRequestManager.getInstance();&lt;BR&gt;mgr.add_InitializeRequest(InitRequest);&lt;BR&gt;&lt;BR&gt;function InitRequest(sender, args) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;args.set_Cancel(!confirm('Really postback?'));&lt;BR&gt;}&lt;/SPAN&gt; &lt;BR&gt;&lt;BR&gt;Even though this example isn't very real-world, you could use&amp;nbsp;something like this to&amp;nbsp;prioritize async calls,&amp;nbsp;preventing&amp;nbsp;a more important in-progress&amp;nbsp;request from being cancelled by a subsequent one.&amp;nbsp; Jeff also used a similar&amp;nbsp;method to&amp;nbsp;draw attention to an updated content area after&amp;nbsp;the&amp;nbsp;asynch postback completed.&amp;nbsp;&amp;nbsp;Related docs:&lt;A href="http://ajax.asp.net/docs/ClientReference/Sys.WebForms/PageRequestManagerClass/default.aspx" target=_blank&gt;ASP.NET AJAX PageRequestManager doc&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;Great job, guys. Turn around, bright eyes... 
&lt;P&gt;&lt;/P&gt;
&lt;DIV class=tagLink&gt;&lt;A href="http://technorati.com/tag/MIX07" rel=tag&gt;MIX07&lt;/A&gt; &lt;/DIV&gt;&lt;img src="http://blogs.claritycon.com/aggbug.aspx?PostID=3093" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=EqmqL"&gt;&lt;img src="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?i=EqmqL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/ClarityBlogs/SteveHolstad?a=ccZpL"&gt;&lt;img src="http://feeds.feedburner.com/