<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.davidchristiansen.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>David Christiansen | davidchristiansen.com</title>
        <link>http://davidchristiansen.com/Default.aspx</link>
        <description>Personal Blog on anything and everything owned by David Christiansen, a Software Architect, Techno-Geek, and most importantly a proud father and husband</description>
        <language>en-GB</language>
        <copyright>David Christiansen</copyright>
        <managingEditor>blog@davidchristiansen.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image><link>http://www.davidchristiansen.com</link><url>http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/1466/o_me_bw_100.jpg</url><title>David Christiansen | davidchristiansen.com</title></image>
        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.davidchristiansen.com/DCGWB" /><feedburner:info uri="dcgwb" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>55.961501</geo:lat><geo:long>-4.251709</geo:long><creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/2.0/</creativeCommons:license><feedburner:emailServiceId>DCGWB</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
            <title>DotNetOpenAuth: Debugging and Tracing OpenID and OAuth on ASP.NET (or MVC) using Glimpse</title>
            <category>DotNetOpenAuth</category>
            <category>C#</category>
            <category>ASP.NET</category>
            <category>.NET</category>
            <category>OpenID</category>
            <category>OAuth</category>
            <link>http://feeds.davidchristiansen.com/~r/DCGWB/~3/qHDLyRUpS2E/dotnetopenauth-debugging-and-tracing-openid-and-oauth-on-asp.net-or.aspx</link>
            <description>&lt;p&gt;&lt;em&gt;Synopsis:&lt;/em&gt; Understanding exactly what is happening under the hood when it comes to working with OpenID and OAuth can be challenging even for the seasoned IDM developer. What I have found to help, is being able to see the communications between all the parties involved. Fortunately the DotNetOpenAuth library can be told to expose a plethora of information to the developer via integrated logging. In this post I will talk about a project called &lt;strong&gt;&lt;a href="http://getglimpse.com" target="_blank"&gt;Glimpse&lt;/a&gt;&lt;/strong&gt; that exposes a whole host of information to you, the developer, directly within the browser and then I will introduce a Glimpse plugin I have written that exposes all that lovely juicy information directly from DotNetOpenAuth.&lt;/p&gt;  &lt;h3&gt;In Short&lt;/h3&gt;  &lt;ol&gt;   &lt;li&gt;&lt;strong&gt;&lt;a href="http://nuget.org/List/Packages/DCCreative.DNOA4Glimpse" target="_blank"&gt;Get DNOA4Glimpse&lt;/a&gt;&lt;/strong&gt;:       &lt;br /&gt;&lt;font size="1"&gt;NuGet Command: PM&amp;gt; &lt;em&gt;Install-Package DCCreative.DNOA4Glimpse&lt;/em&gt;&lt;/font&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;h2&gt;What is Glimpse?    &lt;br /&gt;&lt;font size="1"&gt;&lt;font style="font-weight: normal"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;a href="http://getglimpse.com/About"&gt;&lt;font size="1"&gt;&lt;font style="font-weight: normal"&gt;http://getglimpse.com/About&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt;&lt;font style="font-weight: normal"&gt;)&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/WhatIsGlimpse_5.jpg" rel="lightbox"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="WhatIsGlimpse" border="0" alt="WhatIsGlimpse" align="left" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/WhatIsGlimpse_thumb_1.jpg" width="142" height="240" /&gt;&lt;/a&gt;Glimpse is a very cool set of utilities that provide developers with a massive array of how requests go about being served, as well as a host of other information about the server itself.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;At its core, Glimpse allows you to debug your web site or web service right in the browser. Glimpse allows you to "Glimpse" into what's going on in your web server. In other words what Firebug is to debugging your client side code, Glimpse is to debugging your server within the client.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Glimpse is available via NuGet at &lt;a href="http://nuget.org/List/Packages/Glimpse"&gt;http://nuget.org/List/Packages/Glimpse&lt;/a&gt;.&lt;/p&gt;  &lt;div style="clear: both"&gt;&lt;/div&gt;  &lt;h2&gt;Exposing DotNetOpenAuth to Glimpse&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B2%5D_5.png" rel="lightbox"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="CropperCapture[2]" border="0" alt="CropperCapture[2]" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B2%5D_thumb_1.png" width="240" height="187" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Writing a plugin for Glimpse is childsplay. Glimpse exposes a friendly Plugin interface&lt;/p&gt;  &lt;pre class="brush: csharp;"&gt;public interface IGlimpsePlugin
{
	string Name { get; }
	object GetData(HttpContextBase context);
	void SetupInit();
}&lt;/pre&gt;

&lt;p&gt;Simply inherit from IGlimpsePlugin then implement the members in your plugin.&lt;/p&gt;

&lt;pre class="brush: csharp"&gt;[GlimpsePlugin]
public class DotNetOpenAuthPlugin : IGlimpsePlugin {
	public void SetupInit() {
	//...
	}
	public string Name {
		get { return "DotNetOpenAuth"; }
	}
}&lt;/pre&gt;

&lt;p&gt;After adding a reference to the assembly containing your plugin, Glimpse will automatically pick up your plugin (thanks to the &lt;a href="http://blogs.msdn.com/b/gblock/archive/tags/mef/" target="_blank"&gt;wonderful powers of MEF&lt;/a&gt;).&lt;/p&gt;

&lt;h3&gt;Demo&lt;/h3&gt;

&lt;p&gt;I quickly threw together a sample application to test the plugin.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Create a new ASP.NET MVC site based on the DNOA MVC relying party sample.&lt;/li&gt;

  &lt;li&gt;Add the DNOA4Glimpse package (&lt;font size="1"&gt;&lt;em&gt;Install-Package DCCreative.DNOA4Glimpse)&lt;/em&gt;&lt;/font&gt; &lt;/li&gt;

  &lt;li&gt;Done (&lt;a href="https://github.com/DavidChristiansen/DNOA4Glimpse/tree/master/source/DotNetOpenAuth.MVC3.Glimpse.TestStub" target="_blank"&gt;Get the source here&lt;/a&gt;)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B2%5D_7.png" rel="lightbox"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="CropperCapture[2]" border="0" alt="CropperCapture[2]" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B2%5D_thumb_2.png" width="617" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Glimpse has been turned on (by visiting &lt;a href="http://yourwebsiteurl.example.com/glimpse.axd"&gt;//yourwebsiteurl.example.com/glimpse.axd&lt;/a&gt;) which results in a panel being displayed at the bottom of your screen. As you can see, there is a DotNetOpenAuth tab. Awesome!&lt;/p&gt;

&lt;p&gt;Right, now – let’s do an OpenID Authentication&lt;/p&gt;

&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B4%5D_2.png" rel="lightbox"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="CropperCapture[4]" border="0" alt="CropperCapture[4]" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B4%5D_thumb.png" width="640" height="409" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What’s really cool is the Glimpse’s handling of complex objects.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B5%5D_2.png" rel="lightbox"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="CropperCapture[5]" border="0" alt="CropperCapture[5]" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/DotNetOpenAuth-plugin-for-Glimpse_116F0/CropperCapture%5B5%5D_thumb.png" width="642" height="343" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The presentation of complex objects such as the YADIS services detailed above will improve in a version I am currently working on, thanks for some new presentation features coming to Glimpse soon. Watch this space.&lt;/p&gt;

&lt;p&gt;So the plugin is still in beta but hopefully you will find it useful.&lt;/p&gt;

&lt;p&gt;DNOA4Glimpse and Demo Source is available at &lt;a href="https://github.com/DavidChristiansen/DNOA4Glimpse"&gt;https://github.com/DavidChristiansen/DNOA4Glimpse&lt;/a&gt;&lt;/p&gt; &lt;img src="http://davidchristiansen.com/aggbug/146159.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/r4MPLlgHCA3LoeECCI2KKBoypks/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/r4MPLlgHCA3LoeECCI2KKBoypks/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/r4MPLlgHCA3LoeECCI2KKBoypks/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/r4MPLlgHCA3LoeECCI2KKBoypks/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=qHDLyRUpS2E:0NdG2CElD6g:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=qHDLyRUpS2E:0NdG2CElD6g:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=qHDLyRUpS2E:0NdG2CElD6g:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=qHDLyRUpS2E:0NdG2CElD6g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DCGWB/~4/qHDLyRUpS2E" height="1" width="1"/&gt;</description>
            <dc:creator>David Christiansen</dc:creator>
            <guid isPermaLink="false">http://davidchristiansen.com/archive/2011/07/11/dotnetopenauth-debugging-and-tracing-openid-and-oauth-on-asp.net-or.aspx</guid>
            <pubDate>Mon, 11 Jul 2011 20:03:58 GMT</pubDate>
            <wfw:comment>http://davidchristiansen.com/comments/146159.aspx</wfw:comment>
            <comments>http://davidchristiansen.com/archive/2011/07/11/dotnetopenauth-debugging-and-tracing-openid-and-oauth-on-asp.net-or.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://davidchristiansen.com/comments/commentRss/146159.aspx</wfw:commentRss>
            <trackback:ping>http://davidchristiansen.com/services/trackbacks/146159.aspx</trackback:ping>
        <feedburner:origLink>http://davidchristiansen.com/archive/2011/07/11/dotnetopenauth-debugging-and-tracing-openid-and-oauth-on-asp.net-or.aspx</feedburner:origLink></item>
        <item>
            <title>New Poll : Which .NET Service Bus have you used and recommend.</title>
            <link>http://feeds.davidchristiansen.com/~r/DCGWB/~3/VE8Sle0YOqo/new-poll--which-.net-service-bus-have-you-used.aspx</link>
            <description>&lt;iframe src="http://twtpoll.com/badge/if/?twt=pky43r&amp;amp;b=1" width="300" height="400" frameborder="0" scrolling="no" name="twpw_if" id="twpw_if"&gt;Your browser doesn't support iFrames :( Vote for this poll &lt;a href="http://twtpoll.com/pky43r" title="here" target="_blank"&gt;here&lt;/a&gt;.&lt;/iframe&gt; &lt;img src="http://davidchristiansen.com/aggbug/144450.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/XaHiTFxM7XVZ4NpOPQY5kUlbibc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XaHiTFxM7XVZ4NpOPQY5kUlbibc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/XaHiTFxM7XVZ4NpOPQY5kUlbibc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XaHiTFxM7XVZ4NpOPQY5kUlbibc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=VE8Sle0YOqo:W7u3FhhyRFg:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=VE8Sle0YOqo:W7u3FhhyRFg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=VE8Sle0YOqo:W7u3FhhyRFg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=VE8Sle0YOqo:W7u3FhhyRFg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DCGWB/~4/VE8Sle0YOqo" height="1" width="1"/&gt;</description>
            <dc:creator>David Christiansen</dc:creator>
            <guid isPermaLink="false">http://davidchristiansen.com/archive/2011/03/20/new-poll--which-.net-service-bus-have-you-used.aspx</guid>
            <pubDate>Sun, 20 Mar 2011 19:09:22 GMT</pubDate>
            <wfw:comment>http://davidchristiansen.com/comments/144450.aspx</wfw:comment>
            <comments>http://davidchristiansen.com/archive/2011/03/20/new-poll--which-.net-service-bus-have-you-used.aspx#feedback</comments>
            <wfw:commentRss>http://davidchristiansen.com/comments/commentRss/144450.aspx</wfw:commentRss>
            <trackback:ping>http://davidchristiansen.com/services/trackbacks/144450.aspx</trackback:ping>
        <feedburner:origLink>http://davidchristiansen.com/archive/2011/03/20/new-poll--which-.net-service-bus-have-you-used.aspx</feedburner:origLink></item>
        <item>
            <title>An afternoon with Glenn Block &amp;ndash; Leith, Edinburgh 12th March 2011</title>
            <category>Scottish Developers</category>
            <category>ASP.NET</category>
            <category>Developer</category>
            <category>Alt.Net</category>
            <category>geekSpeak</category>
            <category>.NET</category>
            <category>C#</category>
            <link>http://feeds.davidchristiansen.com/~r/DCGWB/~3/jwlCmEUaP4Y/glenn-block-edinburgh-12th-march-2011.aspx</link>
            <description>&lt;p&gt;&lt;a title="mvcConf 2 - Glenn Block: Take some REST with WCF" href="http://channel9.msdn.com/Series/mvcConf/mvcConf-2-Glenn-Block-Take-some-REST-with-WCF"&gt;&lt;img title="CropperCapture[1]" border="0" alt="CropperCapture[1]" align="right" width="240" height="163" style="background-image: none; border-right-width: 0px; margin: 0px 0px 10px 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/Glenn-Block-and-Beers_B50B/CropperCapture%5B1%5D_50dc1887-1f44-47f5-8db6-9e6286f38e64.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Exciting news.&lt;/p&gt;
&lt;p&gt;I am proud to announce that &lt;strong&gt;Glenn Block&lt;/strong&gt; from Microsoft will be coming all the way from Seattle to Scotland on the 12th March to talk to you!. Glenn is a PM on the WCF team working on Microsoft’s future HTTP and REST stack and has been involved in some pretty exciting and ground-breaking Microsoft development mind-shifts in recent times.&lt;/p&gt;
&lt;p&gt;Don’t miss the chance to hear him speak and ask him questions. The day will be split into two parts. &lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;
Favourite subjects from The Block &lt;br /&gt;
&lt;/strong&gt;The first couple of hours will see Glenn focus on talking about his current work basket – expect to see him talking about Windows Communication Foundation, web APIs, HTTP, REST, MEF, Patterns &amp;amp; Practices and his experiences at the recent mvcConf 2 event! &lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;
Block unblocked chalk talk - your chance to ask Glenn anything he can answer &lt;br /&gt;
&lt;/strong&gt;The second half of the afternoon will be "yours" - a chalk'n'talk if you prefer. It will be your chance to have an open and frank conversation with Glenn, to ask him questions, to challenge him and to get answers to those questions that you’ve been saving for such a celebrity!&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;&lt;a href="http://glenn-block-edinburgh-march-2011.eventbrite.com/"&gt;Book your for ticket here (Tickets are Free!)&lt;/a&gt;&lt;/strong&gt;&lt;/h3&gt;
&lt;h4&gt;Brief history of Glenn&lt;/h4&gt;
&lt;p&gt;Glenn is a PM on the WCF team working on Microsoft’s future HTTP and REST stack. Prior to WCF he was a PM on the new Managed Extensibility Framework in .NET 4.0. He has experience both inside and outside Microsoft developing software solutions for ISVs and the enterprise. He has also been active in involving folks from the community in the development of software at Microsoft. This has included shipping products under open source licenses, as well as assisting other teams looking to do so.&lt;/p&gt;
&lt;p&gt;Glenn is a featured blogger over at CodeBetter, read what he’s writing about here: &lt;a href="http://codebetter.com/glennblock/author/glennblock/"&gt;http://codebetter.com/glennblock/author/glennblock/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;His official Microsoft blog can be found here: &lt;a href="http://blogs.msdn.com/b/gblock/"&gt;http://blogs.msdn.com/b/gblock/&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Glenn Block on the web&lt;/h4&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/mvcConf/mvcConf-2-Glenn-Block-Take-some-REST-with-WCF"&gt;mvcConf 2 - Glenn Block: Take some REST with WCF&lt;/a&gt; (Feb 2011)&lt;/li&gt;
    &lt;li&gt;@gblock on twitter&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://codebetter.com/glennblock/author/glennblock/"&gt;http://codebetter.com/glennblock/author/glennblock/&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a title="My Technobabble - Glenn’s Blog" href="http://blogs.msdn.com/b/gblock/"&gt;My Technobabble - Glenn’s Blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Sponsored by&lt;/h4&gt;
&lt;p&gt;&lt;a title="Storm ID is an award winning full service digital agency in Edinburgh" href="http://www.stormid.com/"&gt;&lt;img title="stormid" alt="stormid" width="170" height="70" style="display: inline" src="http://geekswithblogs.net/images/geekswithblogs_net/dchristiansen/Windows-Live-Writer/Glenn-Block-and-Beers_B50B/stormid_3.png" /&gt;&lt;/a&gt; &lt;br /&gt;
Storm ID is an award winning full service digital agency in Edinburgh&lt;/p&gt; &lt;img src="http://davidchristiansen.com/aggbug/144049.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mIbMCcxzJ7-uwnMLXKCmpfYok3Y/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mIbMCcxzJ7-uwnMLXKCmpfYok3Y/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/mIbMCcxzJ7-uwnMLXKCmpfYok3Y/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mIbMCcxzJ7-uwnMLXKCmpfYok3Y/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=jwlCmEUaP4Y:KfEE7hftWl4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=jwlCmEUaP4Y:KfEE7hftWl4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=jwlCmEUaP4Y:KfEE7hftWl4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=jwlCmEUaP4Y:KfEE7hftWl4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DCGWB/~4/jwlCmEUaP4Y" height="1" width="1"/&gt;</description>
            <dc:creator>David Christiansen</dc:creator>
            <guid isPermaLink="false">http://davidchristiansen.com/archive/2011/02/22/glenn-block-edinburgh-12th-march-2011.aspx</guid>
            <pubDate>Tue, 22 Feb 2011 13:13:06 GMT</pubDate>
            <comments>http://davidchristiansen.com/archive/2011/02/22/glenn-block-edinburgh-12th-march-2011.aspx#feedback</comments>
            <wfw:commentRss>http://davidchristiansen.com/comments/commentRss/144049.aspx</wfw:commentRss>
            <trackback:ping>http://davidchristiansen.com/services/trackbacks/144049.aspx</trackback:ping>
        <feedburner:origLink>http://davidchristiansen.com/archive/2011/02/22/glenn-block-edinburgh-12th-march-2011.aspx</feedburner:origLink></item>
        <item>
            <title>LogParser&amp;ndash;Graphing PING results</title>
            <category>IIS</category>
            <category>CoolTools!!</category>
            <link>http://feeds.davidchristiansen.com/~r/DCGWB/~3/t1iplJtzGDI/logparserndashgraphing-ping-results.aspx</link>
            <description>&lt;p&gt;Here is a nifty little example of how to pipe console output to Microsoft &lt;a title="Link to Microsoft Log Parser v2.2" target="_blank" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&amp;amp;displaylang=en"&gt;LogParser&lt;/a&gt;, in this case the results of a ping against Google.&lt;/p&gt;
&lt;pre class="brush:csharp"&gt;
ping -n 15 www.google.co.uk | "%pathTologparser%\LogParser"
"SELECT TO_INT(REPLACE_STR(EXTRACT_VALUE (Text,'time',' '),'ms',''))
AS Response INTO Ping.gif FROM stdin WHERE Text LIKE '%%Reply%%'
GROUP BY Response" -i textline -legend off -chartTitle "Ping Times" -view&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Note: &lt;/strong&gt;I have inserted line breaks for readability, this should be written as one line.&lt;/p&gt;
&lt;p&gt;Replace %pathTologparser% with the path to your local LogParser installation, typically c:\Program Files\Log Parser 2.2 or c:\Program Files (x86)\Log Parser 2.2 on x64 installations.&lt;/p&gt; &lt;img src="http://davidchristiansen.com/aggbug/143615.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/H-bBTopYQPsnvWHoDKyZxXMkPHc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H-bBTopYQPsnvWHoDKyZxXMkPHc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/H-bBTopYQPsnvWHoDKyZxXMkPHc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H-bBTopYQPsnvWHoDKyZxXMkPHc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=t1iplJtzGDI:p8I-uPlVY9s:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=t1iplJtzGDI:p8I-uPlVY9s:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=t1iplJtzGDI:p8I-uPlVY9s:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=t1iplJtzGDI:p8I-uPlVY9s:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DCGWB/~4/t1iplJtzGDI" height="1" width="1"/&gt;</description>
            <dc:creator>David Christiansen</dc:creator>
            <guid isPermaLink="false">http://davidchristiansen.com/archive/2011/01/25/logparserndashgraphing-ping-results.aspx</guid>
            <pubDate>Tue, 25 Jan 2011 09:33:32 GMT</pubDate>
            <wfw:comment>http://davidchristiansen.com/comments/143615.aspx</wfw:comment>
            <comments>http://davidchristiansen.com/archive/2011/01/25/logparserndashgraphing-ping-results.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://davidchristiansen.com/comments/commentRss/143615.aspx</wfw:commentRss>
            <trackback:ping>http://davidchristiansen.com/services/trackbacks/143615.aspx</trackback:ping>
        <feedburner:origLink>http://davidchristiansen.com/archive/2011/01/25/logparserndashgraphing-ping-results.aspx</feedburner:origLink></item>
        <item>
            <title>(Solved) ID6035: Cannot create a HashAlgorithm / &amp;ldquo;Object Identifier (OID) is unknown&amp;rdquo;</title>
            <link>http://feeds.davidchristiansen.com/~r/DCGWB/~3/avqvfiakaxU/solved-id6035-cannot-create-a-hashalgorithm--ldquoobject-identifier-oid.aspx</link>
            <description>&lt;p&gt;Implementing the &lt;strong&gt;&lt;a href="http://msdn.microsoft.com/en-us/security/aa570351.aspx"&gt;Windows Identity Foundation&lt;/a&gt;&lt;/strong&gt; of Windows Server 2003 and experiencing errors such as the following?&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;strong&gt;Exception:       &lt;br /&gt;&lt;/strong&gt;System.NotSupportedException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;strong&gt;Error Message:       &lt;br /&gt;&lt;/strong&gt;ID6035: Cannot create a HashAlgorithm with name '&lt;/em&gt;&lt;a href="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256'"&gt;&lt;em&gt;http://www.w3.org/2001/04/xmldsig-more#rsa-sha256'&lt;/em&gt;&lt;/a&gt;&lt;em&gt;using the 'System.IdentityModel.Tokens.X509AsymmetricSecurityKey' crypto provider. SHA256 may require a minimum platform of Windows Server 2003 and .NET 3.5 SP1.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;The same error can be experienced if you try to use FedUtil.exe on Windows 2003. Attempts to do so will result in the following error message;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Object Identifier (OID) is unknown&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;No doubt you have ensured that you are indeed on Windows Server 2003 (doh!) and indeed have .NET Framework v3.5 with Service Pack 1.&lt;/p&gt;  &lt;p&gt;This error is due to, in some cases, the HashAlgorithm not being registered on Windows 2003.&lt;/p&gt;  &lt;h3&gt;The Fix&lt;/h3&gt;  &lt;p&gt;Microsoft have published a HotFix that solves this issue. I have found that the hotfix requires a server restart upon installation.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=968730&amp;amp;kbln=en-us"&gt;Microsoft HotFix Download&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;img src="http://davidchristiansen.com/aggbug/142908.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ySqK2B_i5pWGSJCK_wnmY7iKPF0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ySqK2B_i5pWGSJCK_wnmY7iKPF0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ySqK2B_i5pWGSJCK_wnmY7iKPF0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ySqK2B_i5pWGSJCK_wnmY7iKPF0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=avqvfiakaxU:jevSwSxDnaE:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=avqvfiakaxU:jevSwSxDnaE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?i=avqvfiakaxU:jevSwSxDnaE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.davidchristiansen.com/~ff/DCGWB?a=avqvfiakaxU:jevSwSxDnaE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DCGWB?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DCGWB/~4/avqvfiakaxU" height="1" width="1"/&gt;</description>
            <dc:creator>David Christiansen</dc:creator>
            <guid isPermaLink="false">http://davidchristiansen.com/archive/2010/11/29/solved-id6035-cannot-create-a-hashalgorithm--ldquoobject-identifier-oid.aspx</guid>
            <pubDate>Mon, 29 Nov 2010 15:07:25 GMT</pubDate>
            <wfw:comment>http://davidchristiansen.com/comments/142908.aspx</wfw:comment>
            <comments>http://davidchristiansen.com/archive/2010/11/29/solved-id6035-cannot-create-a-hashalgorithm--ldquoobject-identifier-oid.aspx#feedback</comments>
            <wfw:commentRss>http://davidchristiansen.com/comments/commentRss/142908.aspx</wfw:commentRss>
            <trackback:ping>http://davidchristiansen.com/services/trackbacks/142908.aspx</trackback:ping>
        <feedburner:origLink>http://davidchristiansen.com/archive/2010/11/29/solved-id6035-cannot-create-a-hashalgorithm--ldquoobject-identifier-oid.aspx</feedburner:origLink></item>
    </channel>
</rss>

