<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0">
  <channel>
    <title>DotNetKicks.com : Stories kicked by PauloMorgado</title>
    <description>Stories kicked by PauloMorgado</description>
    <link>http://www.dotnetkicks.com/</link>
    <language>en-us</language>
    <copyright>Atweb Publishing Ltd.</copyright>
    <docs>http://backend.userland.com/rss</docs>
    <generator>DotNetKicks.com - .NET links, community driven</generator>
    <ttl>30</ttl>
    <item>
      <title>Replacing Loaded Assemblies - Paulo Morgado</title>
      <description>Paulo shows us how to load, unload and replace assemblies at runtime. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fweblogs.asp.net%2fpaulomorgado%2farchive%2f2008%2f06%2f29%2freplacing-loaded-assemblies.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fweblogs.asp.net%2fpaulomorgado%2farchive%2f2008%2f06%2f29%2freplacing-loaded-assemblies.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/Replacing_Loaded_Assemblies_Paulo_Morgado</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/Replacing_Loaded_Assemblies_Paulo_Morgado</guid>
      <pubDate>Thu, 03 Jul 2008 02:46:02 GMT</pubDate>
    </item>
    <item>
      <title>Stretching Type Inference</title>
      <description>The author goes through a few ramblings on he future of C#  type inference. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2008%2f04%2f22%2fstretching-type-inference.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2008%2f04%2f22%2fstretching-type-inference.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/Stretching_Type_Inference</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/Stretching_Type_Inference</guid>
      <pubDate>Thu, 24 Apr 2008 06:05:24 GMT</pubDate>
    </item>
    <item>
      <title>ASP.NET Controls - Improving automatic ID generation : Concept</title>
      <description>This is the concept behind my solution to improve automatic Id generation. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fnunogomes.net%2fpost%2f2008%2f01%2fASPNET-Controls---Improving-automatic-ID-generation--Concept-(-Part-2).aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fnunogomes.net%2fpost%2f2008%2f01%2fASPNET-Controls---Improving-automatic-ID-generation--Concept-(-Part-2).aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/ASP_NET_Controls_Improving_automatic_ID_generation_Concept</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/ASP_NET_Controls_Improving_automatic_ID_generation_Concept</guid>
      <pubDate>Wed, 30 Jan 2008 23:27:45 GMT</pubDate>
    </item>
    <item>
      <title>Naming Conventions For Localized Concepts In C#</title>
      <description>The author exposes his naming convention for localized concepts in C#.  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f25%2fmy-naming-conventions-for-localized-concepts-in-c.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f25%2fmy-naming-conventions-for-localized-concepts-in-c.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/Naming_Conventions_For_Localized_Concepts_In_C</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/Naming_Conventions_For_Localized_Concepts_In_C</guid>
      <pubDate>Wed, 16 Jan 2008 04:18:13 GMT</pubDate>
    </item>
    <item>
      <title>Mock Javascript or How to unit test Javascript outside the Browser</title>
      <description>At work I do a lot of javascript. The .net framework we develop has a extensive javascript library for the web controls to use and abuse. What happens is that many times we end up building pages to test parts of our js framework. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.brunofigueiredo.com%2fpost%2fMock-Javascript-or-How-to-unit-test-Javascript-outside-the-Browser-environment---Part-1.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.brunofigueiredo.com%2fpost%2fMock-Javascript-or-How-to-unit-test-Javascript-outside-the-Browser-environment---Part-1.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/ajax/Mock_Javascript_or_How_to_unit_test_Javascript_outside_the_Browser</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/ajax/Mock_Javascript_or_How_to_unit_test_Javascript_outside_the_Browser</guid>
      <pubDate>Wed, 19 Dec 2007 21:54:55 GMT</pubDate>
    </item>
    <item>
      <title>http://msmvps.com/blogs/paulomorgado/archive/2007/05/25/my-naming-conv</title>
      <description>The author exposes his naming convention for localized concepts in C#. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=Naming+Conventions+For+Localized+Concepts+In+C%23"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=Naming+Conventions+For+Localized+Concepts+In+C%23" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/http_msmvps_com_blogs_paulomorgado_archive_2007_05_25_my_naming_conv</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/http_msmvps_com_blogs_paulomorgado_archive_2007_05_25_my_naming_conv</guid>
      <pubDate>Thu, 22 Nov 2007 11:11:14 GMT</pubDate>
    </item>
    <item>
      <title>C# Naming Conventions For Partial Class Files</title>
      <description>The author exposes his naming conventions for partial class files. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f24%2fmy-c-naming-conventions-for-partial-class-files.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f24%2fmy-c-naming-conventions-for-partial-class-files.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/C_Naming_Conventions_For_Partial_Class_Files</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/C_Naming_Conventions_For_Partial_Class_Files</guid>
      <pubDate>Thu, 22 Nov 2007 11:06:56 GMT</pubDate>
    </item>
    <item>
      <title>Naming Conventions for C#</title>
      <description>The author exposes his Naming Conventions for C#. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f20%2fnaming-conventions-for-c.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f20%2fnaming-conventions-for-c.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/Naming_Conventions_for_C</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/Naming_Conventions_for_C</guid>
      <pubDate>Thu, 22 Nov 2007 10:56:58 GMT</pubDate>
    </item>
    <item>
      <title>How To Close Browser Windows In Windows Internet Explorer 7</title>
      <description>When a web page uses scripting to close a browser window that was opened by the user and not opened by some action on another page, Internet Explorer pops up a question to the user warning that &amp;quot;The webpage you are viewing is trying to close the tab.&amp;quot; (in this case, Internet Explorer 7) and asking the user for permission to close the tab. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f11%2f02%2fhow-to-close-browser-windows-in-windows-internet-explorer-7.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f11%2f02%2fhow-to-close-browser-windows-in-windows-internet-explorer-7.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/How_To_Close_Browser_Windows_In_Windows_Internet_Explorer_7</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/How_To_Close_Browser_Windows_In_Windows_Internet_Explorer_7</guid>
      <pubDate>Fri, 02 Nov 2007 13:54:34 GMT</pubDate>
    </item>
    <item>
      <title>Improving The Page Flow Application Block: Current Definition And ...</title>
      <description>There are a number of classes in the in the .NET Framework that expose a static (shared in Visual Basic) property with a reference to an instance valid in a particular scope (usually the current thread).
In this article the author changes the Page Flow Application Block to add properties to the page flow directory in order to take advantage of the work done by the page flow provider. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f10%2f29%2fimproving-the-page-flow-application-block-current-definition-and-current-page-flow-post.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f10%2f29%2fimproving-the-page-flow-application-block-current-definition-and-current-page-flow-post.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block_Current_Definition_And</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block_Current_Definition_And</guid>
      <pubDate>Mon, 29 Oct 2007 07:13:10 GMT</pubDate>
    </item>
    <item>
      <title>Improving The Page Flow Application Block: Decoupling Page Flow Usage </title>
      <description>I don't like the fact that I need to know the type of a page flow definition. Or even the fact that a page flow definition has a type.

In this article I'll change the Page Flow Application Block to be possible to get page flows by its definition name instead of its definition type.
 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fimproving-the-page-flow-application-block-decoupling-page-flow-usage-from-its-implementation.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fimproving-the-page-flow-application-block-decoupling-page-flow-usage-from-its-implementation.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block_Decoupling_Page_Flow_Usage</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block_Decoupling_Page_Flow_Usage</guid>
      <pubDate>Wed, 17 Oct 2007 06:48:44 GMT</pubDate>
    </item>
    <item>
      <title>Improving The Page Flow Application Block</title>
      <description>In this series of articles the author shows how (in his opinion, obviously) the Page Flow Application Block of the Web Client Software Factory could be improved. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fimproving-the-page-flow-application-block.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fimproving-the-page-flow-application-block.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block</guid>
      <pubDate>Mon, 15 Oct 2007 06:30:50 GMT</pubDate>
    </item>
    <item>
      <title>Improving The Page Flow Application Block: Removing Database Dependenc</title>
      <description>Especially in development and demonstration scenarios, the dependency on a database can be a big hassle. In this article the author shows how to remove this dependency. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fimproving-the-page-flow-application-block-removing-database-dependencies.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fimproving-the-page-flow-application-block-removing-database-dependencies.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block_Removing_Database_Dependenc</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/Improving_The_Page_Flow_Application_Block_Removing_Database_Dependenc</guid>
      <pubDate>Mon, 15 Oct 2007 06:28:37 GMT</pubDate>
    </item>
    <item>
      <title>Page Flow Application Block With Page Modules</title>
      <description>In this article I will demonstrate how a web application can benefit from the use of Page Modules using, for the demonstration, the Page Flow Store Quick Start and the Page Flow Application Block shipped with the Web Client Software Factory. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fpage-flow-application-block-with-page-modules.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fpage-flow-application-block-with-page-modules.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/Page_Flow_Application_Block_With_Page_Modules</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/Page_Flow_Application_Block_With_Page_Modules</guid>
      <pubDate>Thu, 27 Sep 2007 19:10:53 GMT</pubDate>
    </item>
    <item>
      <title>The Cost Of Client-Side Redirects In ASP.NET And Using Page Modules</title>
      <description>In an ASP.NET application the instances of the HttpApplication class are responsible for handling the requests. These instances are created by the ASP.NET infrastructure and each one may serve many request in its lifetime, however, serving only one at a time. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fthe-cost-of-client-side-redirects-in-asp-net-and-using-page-modules-.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fthe-cost-of-client-side-redirects-in-asp-net-and-using-page-modules-.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/The_Cost_Of_Client_Side_Redirects_In_ASP_NET_And_Using_Page_Modules</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/The_Cost_Of_Client_Side_Redirects_In_ASP_NET_And_Using_Page_Modules</guid>
      <pubDate>Thu, 27 Sep 2007 19:10:10 GMT</pubDate>
    </item>
    <item>
      <title>Introducing ASP.NET Page Modules</title>
      <description>This article introduces the concept of Page Modules, which are similar to HTTP Modules but related to Page Life Cycle, and the need for them. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fintroducing-asp-net-page-modules.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2fpages%2fintroducing-asp-net-page-modules.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/Introducing_ASP_NET_Page_Modules</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/Introducing_ASP_NET_Page_Modules</guid>
      <pubDate>Thu, 27 Sep 2007 19:08:26 GMT</pubDate>
    </item>
    <item>
      <title>What is the real story behind the name of C#?</title>
      <description>The real story behind the name of C#. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f09%2f24%2fwhat-is-the-real-story-behind-the-name-of-c.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f09%2f24%2fwhat-is-the-real-story-behind-the-name-of-c.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/What_is_the_real_story_behind_the_name_of_C</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/What_is_the_real_story_behind_the_name_of_C</guid>
      <pubDate>Sat, 29 Sep 2007 20:46:02 GMT</pubDate>
    </item>
    <item>
      <title>UPDATE: Extension methods</title>
      <description>Extension methods are declared by specifying the keyword this as a modifier on the first parameter of the methods. Extension methods can only be declared in non-generic, non-nested static classes. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f14%2fupdate-extension-methods.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f14%2fupdate-extension-methods.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/UPDATE_Extension_methods</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/UPDATE_Extension_methods</guid>
      <pubDate>Tue, 15 May 2007 07:29:18 GMT</pubDate>
    </item>
    <item>
      <title>Community Convergence XXVII</title>
      <description>What's hot in Micrsoft C#? LINQ providers: LINQ to Amazon, LINQ to SharePoint, LINQ to NHibernate, LINQ to Flickr! Hot posts: recursive lambda expressions, human sacrifice, thread model errors, extension methods, Silverlight, Don Box, Scott Guthrie! Oh my gosh. It's all here! &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblogs.msdn.com%2fcharlie%2farchive%2f2007%2f05%2f08%2fcommunity-convergence-xxvii.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblogs.msdn.com%2fcharlie%2farchive%2f2007%2f05%2f08%2fcommunity-convergence-xxvii.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/csharp/Community_Convergence_XXVII</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/csharp/Community_Convergence_XXVII</guid>
      <pubDate>Mon, 14 May 2007 04:16:59 GMT</pubDate>
    </item>
    <item>
      <title>The search engine every .NET developer was looking for</title>
      <description>While watching this DotNetRocks show, I came across the SearchDotNet engine. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f07%2fthe-search-engine-every-net-developer-was-looking-for.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f07%2fthe-search-engine-every-net-developer-was-looking-for.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/tipsandtricks/The_search_engine_every_NET_developer_was_looking_for</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/tipsandtricks/The_search_engine_every_NET_developer_was_looking_for</guid>
      <pubDate>Mon, 07 May 2007 20:34:22 GMT</pubDate>
    </item>
    <item>
      <title>Optimizing writing for the CustomTextMessageEncoder</title>
      <description>As I told before I've been using WFC to call legacy POX web services. Some of them only accept iso-8859-1, others can accept utf-8, but all use MessageVersion.None and the text/xml media type. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f06%2foptimizing-writing-for-the-customtextmessageencoder.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f06%2foptimizing-writing-for-the-customtextmessageencoder.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/webservices/Optimizing_writing_for_the_CustomTextMessageEncoder</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/webservices/Optimizing_writing_for_the_CustomTextMessageEncoder</guid>
      <pubDate>Mon, 07 May 2007 20:01:43 GMT</pubDate>
    </item>
    <item>
      <title>Optimizing reading for the CustomTextMessageEncoder</title>
      <description>Continuing the improvement of the CustomTextMessageEncoder (see this and this), this time I'll use the XmlDictionaryWriter instead of the XmlTextWriter whenever the character encoding is utf-8, utf-16 or Unicode. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f07%2foptimizing-reading-for-the-customtextmessageencoder.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f07%2foptimizing-reading-for-the-customtextmessageencoder.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/webservices/Optimizing_reading_for_the_CustomTextMessageEncoder</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/webservices/Optimizing_reading_for_the_CustomTextMessageEncoder</guid>
      <pubDate>Mon, 07 May 2007 19:54:37 GMT</pubDate>
    </item>
    <item>
      <title>System.Web.HttpUtility.UrlEncode and character encodings</title>
      <description>A kind reader of one of my blogs posed me a question about a problem with HttpUtility.UrlEncode. His problem was that he needed to URL encode S&amp;#227;o Marcos and instead of getting S%E3o%20Marcos he was getting S%C3%A3o%20Marcos. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f06%2fsystem-web-httputility-urlencode-and-encodings.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f05%2f06%2fsystem-web-httputility-urlencode-and-encodings.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/aspnet/System_Web_HttpUtility_UrlEncode_and_character_encodings</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/aspnet/System_Web_HttpUtility_UrlEncode_and_character_encodings</guid>
      <pubDate>Sun, 06 May 2007 20:05:07 GMT</pubDate>
    </item>
    <item>
      <title>WCF: Building an HTTP User Agent Message Inspector</title>
      <description>Implementation of client message inspector for adding the user-agent HTTP header to requests. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2ffeeds.feedburner.com%2f%7er%2fPauloMorgadoMSMVPS%2f%7e3%2f112283702%2fwcf-building-an-http-user-agent-message-inspector.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2ffeeds.feedburner.com%2f%7er%2fPauloMorgadoMSMVPS%2f%7e3%2f112283702%2fwcf-building-an-http-user-agent-message-inspector.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/webservices/WCF_Building_an_HTTP_User_Agent_Message_Inspector</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/webservices/WCF_Building_an_HTTP_User_Agent_Message_Inspector</guid>
      <pubDate>Wed, 02 May 2007 21:31:02 GMT</pubDate>
    </item>
    <item>
      <title>WCF: Text Message Encoding and ISO-8859-1 Encoding</title>
      <description>I'm a newbie in WFC and, so far, only have done client code to call POX web services.

I've been using a textMessageEncoding binding extension with a message version of None and a write encoding of utf-8 and all has been running fine.

Well, until I needed to call a service in iso-8859-1 encoding. Then I started getting a ProtocolException:

Message=&amp;quot;The content type text/xml;charset=iso-8859-1 of the response message does not match the content type of the binding (text/xml; charset=utf-8). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly.

Bruno directed me to a sample that looked promising. The sample works fine because it's using the same binding extension in the server and in the client.

When I tried to use the customTextMessageBinding from the sample, I got this nice ProtocolException:

The content type text/xml;charset=iso-8859-1 of the response message does not match the content type of the binding (text/xml; charset=iso-8859-1). If using a custom encoder, be sure that the IsContentTypeSupported method is implemented properly.

Looks kind of funny, doesn't it?

It comes down to the fact that the base MessageEncoder class doing a string comparison on the content type.

To solve this, I overrided the IsContentTypeSupported method and added an additional validadion when the validation fails. This new validation only checks for the media type of the response and lets the XmlReader handle the encoding. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f04%2f25%2fwcf-text-message-encoding-and-iso-8859-1-encoding.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fmsmvps.com%2fblogs%2fpaulomorgado%2farchive%2f2007%2f04%2f25%2fwcf-text-message-encoding-and-iso-8859-1-encoding.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/webservices/WCF_Text_Message_Encoding_and_ISO_8859_1_Encoding</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/webservices/WCF_Text_Message_Encoding_and_ISO_8859_1_Encoding</guid>
      <pubDate>Wed, 25 Apr 2007 19:23:03 GMT</pubDate>
    </item>
  </channel>
</rss>
