<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Paulo Morgado : MVP</title><link>http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx</link><description>Tags: MVP</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Hurrah! MVP for the seventh consecutive year!</title><link>http://msmvps.com/blogs/paulomorgado/archive/2009/07/02/hurrah-mvp-for-the-seventh-consecutive-year.aspx</link><pubDate>Thu, 02 Jul 2009 00:31:46 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1697525</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1697525</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1697525</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2009/07/02/hurrah-mvp-for-the-seventh-consecutive-year.aspx#comments</comments><description>&lt;p&gt;After all these years, it&amp;#39;s still an honor, a privilege ... and a few stressful days.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1697525" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category></item><item><title>E-Reference Library Subscription Discount Offer for The Community</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/08/21/e-reference-library-subscription-discount-offer-for-the-community.aspx</link><pubDate>Thu, 21 Aug 2008 22:36:52 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1645447</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1645447</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1645447</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/08/21/e-reference-library-subscription-discount-offer-for-the-community.aspx#comments</comments><description>&lt;a href="http://PauloMorgado.NET/"&gt;&lt;/a&gt;&lt;a href="http://PauloMorgado.NET/"&gt;&lt;/a&gt;  &lt;p&gt;&lt;a title="Microsoft Press Books" href="http://www.microsoft.com/press/" target="_blank"&gt;Microsoft Press&lt;/a&gt; has created an exclusive discount URL for the E-Reference Library that &lt;a title="Microsoft Most Valuable Professional" href="http://mvp.support.microsoft.com" target="_blank"&gt;MVP&lt;/a&gt;s can pass along to the broader community without any limitations or restrictions.&lt;/p&gt; &lt;a href="http://PauloMorgado.NET/"&gt;&lt;/a&gt;  &lt;p&gt;To create a trial subscription, community referrals should use the Trial URL (&lt;a href="http://microsofteref2.books24x7.com/promo.asp?ref=mvptry"&gt;http://microsofteref2.books24x7.com/promo.asp?ref=mvptry&lt;/a&gt;).&lt;/p&gt; &lt;a href="http://PauloMorgado.NET/"&gt;&lt;/a&gt;  &lt;p&gt;Any community referrals who subscribe to E-Reference Libraries through the Subscription URL (&lt;a href="http://microsofteref2.books24x7.com/promo.asp?ref=mvpbuy"&gt;http://microsofteref2.books24x7.com/promo.asp?ref=mvpbuy&lt;/a&gt;) will receive a &lt;strong&gt;40% discount&lt;/strong&gt; on a one-year subscription.&lt;/p&gt; &lt;a href="http://PauloMorgado.NET/"&gt;&lt;/a&gt;  &lt;p&gt;This discount offer ends on September 30, 2008.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1645447" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category></item><item><title>I’m A Microsoft MVP For The 6th Time And I FEEL GREAT</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/07/01/i-m-a-microsoft-mvp-for-the-6th-time-and-i-feel-great.aspx</link><pubDate>Tue, 01 Jul 2008 22:26:04 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1639046</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1639046</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1639046</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/07/01/i-m-a-microsoft-mvp-for-the-6th-time-and-i-feel-great.aspx#comments</comments><description>&lt;a href="http://PauloMorgado.NET/"&gt;&lt;/a&gt;  &lt;div align="center"&gt;     &lt;br /&gt;&lt;a title="I Feel Great! - MVP" href="http://video.msn.com/video.aspx?vid=9fe51aa8-2c13-47f6-9d96-ba109ce014f1" target="_new"&gt;Video: I Feel Great! - MVP&lt;/a&gt; &lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1639046" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category></item><item><title>Pedro Félix Is Blogging</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/05/30/pedro-f-233-lix-is-blogging.aspx</link><pubDate>Fri, 30 May 2008 00:47:27 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1628991</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1628991</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1628991</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/05/30/pedro-f-233-lix-is-blogging.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://pfelix.wordpress.com/about/" target="_blank"&gt;Pedro F&amp;#233;lix&lt;/a&gt; is &lt;a title="Pedro F&amp;#233;lix&amp;#8217;s shared memory" href="http://pfelix.wordpress.com/" target="_blank"&gt;blogging&lt;/a&gt; about &lt;a title="Windows Workflow Foundation (WF)" href="http://msdn.microsoft.com/netframework/aa663324.aspx" target="_blank"&gt;WCF&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1628991" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCF/default.aspx">WCF</category></item><item><title>Techdays Portugal 2008 - For A World 2.0</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/02/06/techdays-portugal-2008-for-a-world-2-0.aspx</link><pubDate>Wed, 06 Feb 2008 21:45:52 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1500150</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1500150</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1500150</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/02/06/techdays-portugal-2008-for-a-world-2-0.aspx#comments</comments><description>&lt;div style="overflow:auto;width:900px;"&gt; &lt;div&gt;&lt;a title="TechDays 2008 | For a World 2.0" href="http://www.techdays.pt/" target="_blank"&gt;&lt;img src="http://www.techdays.pt/images/banner_topo.jpg" alt="" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;div&gt;&lt;a title="TechDays 2008 | For a World 2.0" href="http://www.techdays.pt/" target="_blank"&gt;&lt;img style="padding-right:10px;float:left;" src="http://www.techdays.pt/images/mini_mrec.jpg" alt="" /&gt;&lt;/a&gt; &lt;/div&gt; &lt;p style="padding-right:10px;padding-left:10px;padding-bottom:10px;margin:10px;padding-top:10px;" align="justify"&gt;&lt;a title="Microsoft Portugal" href="http://www.microsoft.com/portugal/" target="_blank"&gt;Microsoft Portugal&lt;/a&gt; will be hosting &lt;a title="TechDays 2008 | For a World 2.0" href="http://www.Techdays.pt/" target="_blank"&gt;Techdays 2008&lt;/a&gt; from Mars 12&lt;sup&gt;nd&lt;/sup&gt; to 14&lt;sup&gt;th&lt;/sup&gt;, right after the Portuguese launch of &lt;a href="http://msdn2.microsoft.com/en-us/vstudio/default.aspx" target="_blank"&gt;Microsoft Visual Studio 2008&lt;/a&gt;, &lt;a href="http://www.microsoft.com/sql/2008/default.mspx" target="_blank"&gt;Microsoft SQL Server 2008&lt;/a&gt; and &lt;a href="http://www.microsoft.com/windowsserver2008/default.mspx" target="_blank"&gt;Microsoft Windows Server 2008&lt;/a&gt; on Mars 11&lt;sup&gt;th&lt;/sup&gt;.&lt;/p&gt; &lt;p style="padding-right:10px;padding-left:10px;padding-bottom:10px;margin:10px;padding-top:10px;" align="justify"&gt;This is the biggest and greatest tech event in Portugal and there will be lots of national and international speakers and contests.&lt;/p&gt; &lt;p style="padding-right:10px;padding-left:10px;padding-bottom:10px;margin:10px;padding-top:10px;" align="justify"&gt;I&amp;#39;ll be there. Come visit us.&lt;/p&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1500150" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SQLServer/default.aspx">SQLServer</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/VisualStudio/default.aspx">VisualStudio</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Windows/default.aspx">Windows</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Techdays/default.aspx">Techdays</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/TechdaysPT08/default.aspx">TechdaysPT08</category></item><item><title>TypeMock: How to Make Reflective Mocks More Natural</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/31/typemock-how-to-make-reflective-mocks-more-natural.aspx</link><pubDate>Thu, 31 Jan 2008 23:56:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1489214</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1489214</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1489214</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/31/typemock-how-to-make-reflective-mocks-more-natural.aspx#comments</comments><description>&lt;p&gt;Like I &lt;a title="TypeMock: Making Reflective Mocks More Natural" href="http://msmvps.com/blogs/paulomorgado/archive/2008/01/29/typemock-making-reflective-mocks-more-natural.aspx" target="_blank"&gt;said before&lt;/a&gt;, this as been on the back of my mind for a while.&lt;/p&gt;
&lt;p&gt;A while back &lt;a class="" title="Getting MethodInfo using LINQ" href="http://msmvps.com/blogs/paulomorgado/archive/2007/03/23/getting-methodinfo-using-linq.aspx" target="_blank"&gt;I introduced a way to get the MethodInfo&lt;/a&gt; of a method in a strongly typed way using &lt;a title="The LINQ Project" href="http://msdn2.microsoft.com/netframework/aa904594.aspx" target="_blank"&gt;LINQ&lt;/a&gt;, and that&amp;#39;s how I&amp;#39;m going to make &lt;a title="Overview" href="http://www.typemock.com/Docs/UserGuide/OverView.html" target="_blank"&gt;Reflective Mocks&lt;/a&gt; more &lt;a title="Natural TypeMocks™" href="http://www.typemock.com/Docs/UserGuide/NaturalMocks.html" target="_blank"&gt;Natural&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Well, it&amp;#39;s as easy as this:&lt;/p&gt;&lt;pre style="BORDER-RIGHT:thin outset;PADDING-RIGHT:10px;BORDER-TOP:thin groove;PADDING-LEFT:10px;BACKGROUND:#ffffff;OVERFLOW-X:auto;PADDING-BOTTOM:10px;BORDER-LEFT:thin groove;PADDING-TOP:10px;BORDER-BOTTOM:thin outset;FONT-FAMILY:consolas;"&gt;&lt;span style="COLOR:blue;"&gt;public static class &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;MockExtender
&lt;/span&gt;{
    &lt;span style="COLOR:blue;"&gt;public static &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;IParameters &lt;/span&gt;ExpectAndReturn&amp;lt;T1, T2, TResult&amp;gt;(&lt;span style="COLOR:blue;"&gt;this &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;IMockControl &lt;/span&gt;mock, &lt;span style="COLOR:#2b91af;"&gt;Expression&lt;/span&gt;&amp;lt;&lt;span style="COLOR:#2b91af;"&gt;Func&lt;/span&gt;&amp;lt;T1, T2, TResult&amp;gt;&amp;gt; expression, &lt;span style="COLOR:blue;"&gt;object &lt;/span&gt;ret, &lt;span style="COLOR:blue;"&gt;params &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;Type&lt;/span&gt;[] genericTypes)
    {
        &lt;span style="COLOR:blue;"&gt;return &lt;/span&gt;mock.ExpectAndReturn((expression.Body &lt;span style="COLOR:blue;"&gt;as &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;MethodCallExpression&lt;/span&gt;).Method.Name, ret, genericTypes);
    }
}&lt;/pre&gt;
&lt;p align="justify"&gt;(For now, I&amp;#39;ll leave to someone else the implementation of the rest of the overloads)&lt;/p&gt;
&lt;p align="justify"&gt;With this implementation it&amp;#39;s possible to handle static classes (a limitation of &lt;a title="iridescence.no" href="http://www.iridescence.no/" target="_blank"&gt;Fredrik&lt;/a&gt;&amp;#39;s &lt;a title="A Type Safe ExpectCall Extension Method for Reflective TypeMocks" href="http://www.iridescence.no/Posts/A-Type-Safe-ExpectCall-Extension-Method-for-Reflective-TypeMocks.aspx" target="_blank"&gt;implementation&lt;/a&gt;).&lt;/p&gt;
&lt;p align="justify"&gt;As for private methods, just let &lt;a title="Visual Studio Developer Center" href="http://msdn2.microsoft.com/en-us/vstudio/default.aspx" target="_blank"&gt;Visual Studio&lt;/a&gt; (2008, in this sample) and &lt;a title="TypeMock™ - Simplify Unit Testing" href="http://www.typemock.com/" target="_blank"&gt;TypeMock&lt;/a&gt; do their magic.&lt;/p&gt;
&lt;p align="justify"&gt;So, to test this class:&lt;/p&gt;&lt;pre style="BORDER-RIGHT:thin outset;PADDING-RIGHT:10px;BORDER-TOP:thin groove;PADDING-LEFT:10px;BACKGROUND:#ffffff;OVERFLOW-X:auto;PADDING-BOTTOM:10px;BORDER-LEFT:thin groove;PADDING-TOP:10px;BORDER-BOTTOM:thin outset;FONT-FAMILY:consolas;"&gt;&lt;span style="COLOR:blue;"&gt;public static class &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;Class1
&lt;/span&gt;{
    &lt;span style="COLOR:blue;"&gt;public static string &lt;/span&gt;PublicMethod(&lt;span style="COLOR:blue;"&gt;string &lt;/span&gt;param1, &lt;span style="COLOR:blue;"&gt;int &lt;/span&gt;param2)
    {
        &lt;span style="COLOR:blue;"&gt;return &lt;/span&gt;PrivateMethod(param2, param1);
    }

    &lt;span style="COLOR:blue;"&gt;private static string &lt;/span&gt;PrivateMethod(&lt;span style="COLOR:blue;"&gt;int &lt;/span&gt;param2, &lt;span style="COLOR:blue;"&gt;string &lt;/span&gt;param1)
    {
        &lt;span style="COLOR:blue;"&gt;throw new &lt;/span&gt;&lt;span style="COLOR:#2b91af;"&gt;NotImplementedException&lt;/span&gt;();
    }
}&lt;/pre&gt;
&lt;p&gt;We just write this test:&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;&lt;/p&gt;&lt;pre style="BORDER-RIGHT:thin outset;PADDING-RIGHT:10px;BORDER-TOP:thin groove;PADDING-LEFT:10px;BACKGROUND:#ffffff;OVERFLOW-X:auto;PADDING-BOTTOM:10px;BORDER-LEFT:thin groove;PADDING-TOP:10px;BORDER-BOTTOM:thin outset;FONT-FAMILY:consolas;"&gt;[&lt;span style="COLOR:#2b91af;"&gt;TestMethod&lt;/span&gt;()]
&lt;span style="COLOR:blue;"&gt;public void &lt;/span&gt;PublicMethodTest()
{
    &lt;span style="COLOR:blue;"&gt;string &lt;/span&gt;param1 = &lt;span style="COLOR:#a31515;"&gt;&amp;quot;param&amp;quot;&lt;/span&gt;;
    &lt;span style="COLOR:blue;"&gt;int &lt;/span&gt;param2 = 5;
    &lt;span style="COLOR:blue;"&gt;string &lt;/span&gt;expected = &lt;span style="COLOR:#a31515;"&gt;&amp;quot;return&amp;quot;&lt;/span&gt;;
    &lt;span style="COLOR:blue;"&gt;string &lt;/span&gt;actual;

    &lt;span style="COLOR:#2b91af;"&gt;Mock &lt;/span&gt;targetMock = &lt;span style="COLOR:#2b91af;"&gt;MockManager&lt;/span&gt;.Mock(&lt;span style="COLOR:blue;"&gt;typeof&lt;/span&gt;(&lt;span style="COLOR:#2b91af;"&gt;Class1&lt;/span&gt;));

    targetMock.ExpectAndReturn((&lt;span style="COLOR:blue;"&gt;int &lt;/span&gt;i, &lt;span style="COLOR:blue;"&gt;string &lt;/span&gt;s) =&amp;gt; ClassLibrary1.&lt;span style="COLOR:#2b91af;"&gt;Class1_Accessor&lt;/span&gt;.PrivateMethod(i, s), expected).Args(param2, param1);

    actual = &lt;span style="COLOR:#2b91af;"&gt;Class1&lt;/span&gt;.PublicMethod(param1, param2);

    &lt;span style="COLOR:#2b91af;"&gt;Assert&lt;/span&gt;.AreEqual(expected, actual);
}&lt;/pre&gt;
&lt;p&gt;How about this for clean and simple?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1489214" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Testing/default.aspx">Testing</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/UnitTests/default.aspx">UnitTests</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/TypeMock/default.aspx">TypeMock</category></item><item><title>WCSF geekSpeak: Download Available At MSEVENTS</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/27/wcsf-geekspeak-download-available-at-msevents.aspx</link><pubDate>Sun, 27 Jan 2008 23:25:27 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1483175</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1483175</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1483175</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/27/wcsf-geekspeak-download-available-at-msevents.aspx#comments</comments><description>&lt;p&gt;For those who missed my webcast (and wanted to watch it) it&amp;#39;s &lt;a title="MSDN Webcast: MSDN geekSpeak: The Web Client Software Factory in Action (Level 300)" href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?culture=en-US&amp;amp;EventID=1032362715&amp;amp;CountryCode=US" target="_blank"&gt;available to download at the MSEVENTS site&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1483175" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/EntLib/default.aspx">EntLib</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PnP/default.aspx">PnP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftwareFactories/default.aspx">SoftwareFactories</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PageFlow/default.aspx">PageFlow</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/AJAX/default.aspx">AJAX</category></item><item><title>WCSF geekSpeak: Online Resources</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/24/wcsf-geekspeak-online-resources.aspx</link><pubDate>Thu, 24 Jan 2008 00:46:42 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1477193</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1477193</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1477193</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/24/wcsf-geekspeak-online-resources.aspx#comments</comments><description>&lt;p&gt;Here is the list of topics covered in the WCSF geekSpeak webcast:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Contextual Autocomplete Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Autocomplete_landing_page&amp;amp;referringTitle=Home" target="_blank"&gt;Contextual Auto Complete Bundle&lt;/a&gt;&lt;br /&gt;Demo code: &lt;a title="WCSF geekSpeak: Contextual Auto Complete Bundle Demo Code" href="http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-contextual-auto-complete-bundle-demo-code.aspx" target="_blank"&gt;WCSF geekSpeak: Contextual Auto Complete Bundle Demo Code&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Validation Guidance Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Validation_landing_page"&gt;Validation Bundle&lt;/a&gt;&lt;br /&gt;Demo code: &lt;a title="WCSF geekSpeak: Validation Bundle Demo Code" href="http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-validation-bundle-demo-code.aspx" target="_blank"&gt;WCSF geekSpeak: Validation Bundle Demo Code&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Real-Time Search Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Search_landing_page" target="_blank"&gt;Real-Time Search Bundle&lt;/a&gt;&lt;br /&gt;Demo code: &lt;a title="WCSF geekSpeak: Real-Time Search Bundle Demo Code" href="http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-real_2D00_time-search-bundle-demo-code.aspx" target="_blank"&gt;WCSF geekSpeak: Real-Time Search Bundle Demo Code&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory - MVP Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=MVP_landing_page" target="_blank"&gt;MVP Bundle&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Modularity Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Modularity_landing_page&amp;amp;referringTitle=Home" target="_blank"&gt;Modularity Bundle&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Page Flow Application Block" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Page%20Flow%20Application%20Block" target="_blank"&gt;Page Flow Application Block&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices: Web Client Software Factory Contrib - E-Commerce Catalog" href="http://www.codeplex.com/wcsfcontrib/Wiki/View.aspx?title=E-Commerce%20Catalog" target="_blank"&gt;E-Commerce Catalog&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices: Web Client Software Factory Contrib - EventBroker extension" href="http://www.codeplex.com/wcsfcontrib/Wiki/View.aspx?title=EventBroker%20extension&amp;amp;referringTitle=Documentation" target="_blank"&gt;EventBroker extension&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;And here is a list of online resources:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="patterns &amp;amp; practices - Web Client Software Factory" href="http://www.codeplex.com/websf" target="_blank"&gt;patterns &amp;amp; practices - Web Client Software Factory&lt;/a&gt;  &lt;li&gt;&lt;a title="patterns &amp;amp; practices: Web Client Software Factory Contrib" href="http://www.codeplex.com/wcsfcontrib" target="_blank"&gt;patterns &amp;amp; practices - Web Client Software Factory Contrib&lt;/a&gt; &lt;li&gt;&lt;a title="Patterns and Practices Guidance" href="http://pnpguidance.net/" target="_blank"&gt;Patterns and Practices Guidance&lt;/a&gt; &lt;li&gt;&lt;a title="Improving The Page Flow Application Block" href="http://msmvps.com/blogs/paulomorgado/pages/improving-the-page-flow-application-block.aspx" target="_blank"&gt;Improving The Page Flow Application Block&lt;/a&gt;&lt;/li&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="Removing Database Dependencies" href="http://msmvps.com/blogs/paulomorgado/pages/improving-the-page-flow-application-block-removing-database-dependencies.aspx" target="_blank"&gt;Removing Database Dependencies&lt;/a&gt; &lt;li&gt;&lt;a title="Decoupling Page Flow Usage From Its Implementation" href="http://msmvps.com/blogs/paulomorgado/pages/improving-the-page-flow-application-block-decoupling-page-flow-usage-from-its-implementation.aspx" target="_blank"&gt;Decoupling Page Flow Usage From Its Implementation&lt;/a&gt; &lt;li&gt;&lt;a title="Current Definition And Current Page Flow" href="http://msmvps.com/blogs/paulomorgado/pages/improving-the-page-flow-application-block-current-definition-and-current-page-flow.aspx" target="_blank"&gt;Current Definition And Current Page Flow&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1477193" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/EntLib/default.aspx">EntLib</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PnP/default.aspx">PnP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftwareFactories/default.aspx">SoftwareFactories</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PageFlow/default.aspx">PageFlow</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/AJAX/default.aspx">AJAX</category></item><item><title>WCSF geekSpeak: Real-Time Search Bundle Demo Code</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-real_2D00_time-search-bundle-demo-code.aspx</link><pubDate>Wed, 23 Jan 2008 23:51:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1477125</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1477125</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1477125</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-real_2D00_time-search-bundle-demo-code.aspx#comments</comments><description>&lt;p align="justify"&gt;This demo e based on the demo included in the &lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Real-Time Search Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Search_landing_page" target="_blank"&gt;Real-Time Search Bundle&lt;/a&gt; download.&lt;/p&gt;
&lt;p align="justify"&gt;The demo includes an entry form with two implementations:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;div align="justify"&gt;Using an &lt;strong&gt;Update Panel&lt;/strong&gt;.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div align="justify"&gt;Using the &lt;a title="patterns &amp;amp; practices - Web Client Software Factory" href="http://www.codeplex.com/websf" target="_blank"&gt;WCSF&lt;/a&gt;&amp;#39;s &lt;strong&gt;Real-Time Search Monitor&lt;/strong&gt;.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1477125" width="1" height="1"&gt;</description><enclosure url="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.01.47.71.25/RealTimeSearchBundleDemo.zip" length="610263" type="application/x-zip-compressed" /><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PnP/default.aspx">PnP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftwareFactories/default.aspx">SoftwareFactories</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/AJAX/default.aspx">AJAX</category></item><item><title>WCSF geekSpeak: Contextual Auto Complete Bundle Demo Code</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-contextual-auto-complete-bundle-demo-code.aspx</link><pubDate>Wed, 23 Jan 2008 23:26:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1477112</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1477112</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1477112</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/23/wcsf-geekspeak-contextual-auto-complete-bundle-demo-code.aspx#comments</comments><description>&lt;p align="justify"&gt;This demo e based on the demo included in the &lt;a title="patterns &amp;amp; practices - Web Client Software Factory - Contextual Autocomplete Bundle" href="http://www.codeplex.com/websf/Wiki/View.aspx?title=Autocomplete_landing_page&amp;amp;referringTitle=Home" target="_blank"&gt;Contextual Auto Complete Bundle&lt;/a&gt; download.&lt;/p&gt;
&lt;p align="justify"&gt;The demo includes an entry form with three implementations:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;div align="justify"&gt;Using the traditional auto post back model&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div align="justify"&gt;Using an update panel&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div align="justify"&gt;Using the &lt;strong&gt;Contextual Auto Complete Extender&lt;/strong&gt;.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1477112" width="1" height="1"&gt;</description><enclosure url="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.01.47.71.12/ContextualAutoCompleteBundleDemo.zip" length="761807" type="application/x-zip-compressed" /><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PnP/default.aspx">PnP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftwareFactories/default.aspx">SoftwareFactories</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/AJAX/default.aspx">AJAX</category></item><item><title>WCSF geekSpeak: Registration Open</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/18/wcsf-geekspeak-registration-open.aspx</link><pubDate>Fri, 18 Jan 2008 22:27:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1470326</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1470326</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1470326</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/18/wcsf-geekspeak-registration-open.aspx#comments</comments><description>&lt;p&gt;There was a problem with the registration for this webcast, but it&amp;#39;s now solved.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032362714&amp;amp;Culture=en-US" target="_blank"&gt;Jan 23 - Paulo Morgado - The Web client software factory in action&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1470326" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PnP/default.aspx">PnP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PageFlow/default.aspx">PageFlow</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category></item><item><title>Free e-books on the Visual Studio 2008 Learning Portal</title><link>http://msmvps.com/blogs/paulomorgado/archive/2008/01/03/free-e-books-on-the-visual-studio-2008-learning-portal.aspx</link><pubDate>Thu, 03 Jan 2008 00:23:58 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1433658</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1433658</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1433658</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2008/01/03/free-e-books-on-the-visual-studio-2008-learning-portal.aspx#comments</comments><description>&lt;p&gt;&lt;a title="Microsoft Corporation" href="http://www.microsoft.com/" target="_blank"&gt;Microsoft&lt;/a&gt; is &lt;a title="Free e-book offer" href="http://www.microsoft.com/learning/vstudio/2008/default.mspx#EBOOK" target="_blank"&gt;offering free e-books&lt;/a&gt; (or, at least some chapters) in the &lt;a title="Visual Studio 2008 - Learning Portal" href="http://www.microsoft.com/learning/vstudio/2008/" target="_blank"&gt;Visual Studio 2008 Learning Portal&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1433658" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/VisualStudio/default.aspx">VisualStudio</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/AJAX/default.aspx">AJAX</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Silverlight/default.aspx">Silverlight</category></item><item><title>JSMock on CodePlex</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/12/27/jsmock-on-codeplex.aspx</link><pubDate>Thu, 27 Dec 2007 21:57:09 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1422597</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1422597</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1422597</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/12/27/jsmock-on-codeplex.aspx#comments</comments><description>&lt;p&gt;&lt;a title="Creative Minds - because we all have one" href="http://brunofigueiredo.com/" target="_blank"&gt;Bruno&lt;/a&gt; has set up a &lt;a title="JSMock Project" href="http://www.codeplex.com/jsmock" target="_blank"&gt;project&lt;/a&gt; at &lt;a title="CodePlex - Open Source Project Community" href="http://www.codeplex.com/" target="_blank"&gt;CodePlex&lt;/a&gt; for his testing framework for &lt;a title="JavaScript" href="http://www.wikipedia.org/wiki/Javascript" target="_blank"&gt;JavaScript&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1422597" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Testing/default.aspx">Testing</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/UnitTests/default.aspx">UnitTests</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/JavaScript/default.aspx">JavaScript</category></item><item><title>Stop Designing for Testability (by Eli Lopian)</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/12/26/stop-designing-for-testability-by-eli-lopian.aspx</link><pubDate>Wed, 26 Dec 2007 21:25:54 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1420759</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1420759</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1420759</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/12/26/stop-designing-for-testability-by-eli-lopian.aspx#comments</comments><description>&lt;p align="justify"&gt;&lt;a title="Eli Lopian&amp;rsquo;s Blog (TypeMock)" href="http://www.elilopian.com/" target="_blank"&gt;Eli Lopian&lt;/a&gt; from &lt;a title="TypeMock&amp;trade; - Simplify Unit Testing" href="http://www.typemock.com/" target="_blank"&gt;TypeMock™&lt;/a&gt;, has an &lt;a title="Stop Designing for Testability" href="http://www.codeproject.com/KB/dotnet/StopDesign4Tests.aspx" target="_blank"&gt;article&lt;/a&gt; on &lt;a title="CodeProject. Free source code and programming articles." href="http://www.codeproject.com/" target="_blank"&gt;CodeProject&lt;/a&gt; about the disadvantages of &lt;strong&gt;design for testability&lt;/strong&gt; and how to use &lt;a title="TypeMock&amp;trade; - Simplify Unit Testing" href="http://www.typemock.com/" target="_blank"&gt;TypeMock™&lt;/a&gt; to remove these disadvantages while keep the advantages of unit testing.&lt;/p&gt; &lt;p&gt;I have to say that I agree with Eli: &lt;strong&gt;design for testability&lt;/strong&gt; is BAD. It exposes more that it needs just for the purpose of testing and might increase the number of classes and interfaces that need to be implemented, tested and maintained. It also increases the attack surface of the system being built.&lt;/p&gt; &lt;p&gt;I am a firm believer in &lt;strong&gt;code for testability&lt;/strong&gt;. Using tools like &lt;a title="Visual Studio Developer Center" href="http://msdn2.microsoft.com/en-us/vstudio/default.aspx" target="_blank"&gt;Visual Studio&lt;/a&gt; and &lt;a title="TypeMock&amp;trade; - Simplify Unit Testing" href="http://www.typemock.com/" target="_blank"&gt;TypeMock™&lt;/a&gt; you can easily test private members of a class. You can do almost the same you would do in &lt;strong&gt;design for testability&lt;/strong&gt; without exposing what doesn&amp;#39;t need to be exposed and go even further by factoring your code in smaller methods easier to test.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1420759" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Testing/default.aspx">Testing</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/UnitTests/default.aspx">UnitTests</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/TypeMock/default.aspx">TypeMock</category></item><item><title>Unit Test Patterns for .NET (from TypeMock™)</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/12/26/unit-test-patterns-for-net-from-typemock.aspx</link><pubDate>Wed, 26 Dec 2007 20:21:39 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1420678</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1420678</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1420678</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/12/26/unit-test-patterns-for-net-from-typemock.aspx#comments</comments><description>&lt;p&gt;There is a good set of articles about &lt;strong&gt;Unit Test Patterns&lt;/strong&gt; in the &lt;a title="TypeMock&amp;trade; - Simplify Unit Testing" href="http://www.typemock.com/" target="_blank"&gt;TypeMock™&lt;/a&gt; site:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="Unit-Test Patterns for .NET - Part I" href="http://www.typemock.com/Docs/TestPatterns.html" target="_blank"&gt;Unit-Test Patterns for .NET - Part I&lt;/a&gt;&lt;br /&gt;This article looks at patterns in unit testing and describes the main patterns found in tested .NET code. It also describes the problems with each pattern.  &lt;li&gt;&lt;a title="Unit Test Patterns for .NET - Part II - TypeMocks" href="http://www.typemock.com/Docs/Mock%20Types.html" target="_blank"&gt;Unit Test Patterns for .NET - Part II - TypeMocks&lt;/a&gt;&lt;br /&gt;Programmers who have incorporated unit testing into their development process already know its advantages: cleaner code, courage to refactor, and higher speed. But even the most die-hard unit testers can falter when faced with testing a class that relies on system state for its behavior. This article looks at the &lt;strong&gt;TypeMock pattern&lt;/strong&gt; that can help you solve these problems.  &lt;li&gt;&lt;a title="Unit-Test Patterns for .NET - Part III - Natural TypeMocks&amp;trade;" href="http://www.typemock.com/Docs/NaturalTypeMocks.html" target="_blank"&gt;Unit-Test Patterns for .NET - Part III - Natural TypeMocks™&lt;/a&gt;&lt;br /&gt;In this series, unit-test patterns and the advantages that it brings have been discussed. Although there is great power in using TypeMocks, there are times when the reflective API can falter when refactoring code. This article will look at how to test the interaction between classes using Natural Type Mocks to solve these problems.&lt;/li&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1420678" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Tools/default.aspx">Tools</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Testing/default.aspx">Testing</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/UnitTests/default.aspx">UnitTests</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/TypeMock/default.aspx">TypeMock</category></item><item><title>WCSF geekSpeak: What do you want to see?</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/12/17/wcsf-geekspeak-what-do-you-want-to-see.aspx</link><pubDate>Mon, 17 Dec 2007 00:17:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1400862</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1400862</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1400862</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/12/17/wcsf-geekspeak-what-do-you-want-to-see.aspx#comments</comments><description>&lt;p&gt;Just let me know to see if I can accommodate it on my &lt;a title="I&amp;#39;m on geekSpeak" href="http://msmvps.com/blogs/paulomorgado/archive/2007/12/09/i-m-on-geekspeak.aspx" target="_blank"&gt;geekSpeak&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1400862" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftwareFactories/default.aspx">SoftwareFactories</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PageFlow/default.aspx">PageFlow</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category></item><item><title>I'm on geekSpeak</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/12/09/i-m-on-geekspeak.aspx</link><pubDate>Sun, 09 Dec 2007 23:34:47 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1389200</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1389200</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1389200</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/12/09/i-m-on-geekspeak.aspx#comments</comments><description>&lt;p align="justify"&gt;Or I&amp;#39;ll be, on January 23rd.&lt;/p&gt; &lt;p align="justify"&gt;Here is the complete list of web casts for December 2007 and January 2008:&lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032359319&amp;amp;Culture=en-US" target="_blank"&gt;Dec 12 - Brian Loesgen - BizTalk Adapters&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032359088&amp;amp;Culture=en-US" target="_blank"&gt;Dec 19 - Shaun Walker - DotNetNuke&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032362458&amp;amp;Culture=en-US" target="_blank"&gt;Jan 2 - Michele Leroux Bustamante - CardSpace – Why should you care? Who’s using it today and how?&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032362462&amp;amp;Culture=en-US" target="_blank"&gt;Jan 9 - Kevin Goff - SQL Server 2008 Programming for Application Developers&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032362711&amp;amp;Culture=en-US" target="_blank"&gt;Jan 16 - Kate Gregory - The Vista bridge for .NET programmers&lt;/a&gt; &lt;/div&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032362714&amp;amp;Culture=en-US" target="_blank"&gt;&lt;strong&gt;Jan 23 - Paulo Morgado - The Web client software factory in action&lt;/strong&gt;&lt;/a&gt; &lt;/div&gt;&lt;/li&gt; &lt;li&gt; &lt;div align="justify"&gt;&lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032362721&amp;amp;Culture=en-US"&gt;Jan 30 - Jim Wilt - Best Practices for Private Security from a Public, Anonymous WSS 3.0 Site&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1389200" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Architecture/default.aspx">Architecture</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Community/default.aspx">Community</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Web/default.aspx">Web</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCSF/default.aspx">WCSF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Webcasts/default.aspx">Webcasts</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PnP/default.aspx">PnP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftwareFactories/default.aspx">SoftwareFactories</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PageFlow/default.aspx">PageFlow</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/geekSpeak/default.aspx">geekSpeak</category></item><item><title>PDC08 has been announced</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/12/09/pdc08-has-been-announced.aspx</link><pubDate>Sun, 09 Dec 2007 22:49:29 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1389138</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1389138</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1389138</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/12/09/pdc08-has-been-announced.aspx#comments</comments><description>&lt;p&gt;&lt;a title="Microsoft Corporation" href="http://www.microsoft.com/" target="_blank"&gt;Microsoft&lt;/a&gt; has &lt;a title="MSDN Events and Webcasts: PDC08" href="http://msdn2.microsoft.com/events/bb288534.aspx" target="_blank"&gt;announced&lt;/a&gt; the date for &lt;a title="MSDN Events and Webcasts: PDC08" href="http://msdn2.microsoft.com/events/bb288534.aspx" target="_blank"&gt;PDC08&lt;/a&gt;. Will this be a keeper?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1389138" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Events/default.aspx">Events</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PDC08/default.aspx">PDC08</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/PDC/default.aspx">PDC</category></item><item><title>TypeTypeConverter vs. TypeNameConverter</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/11/25/typetypeconverter-vs-typenameconverter.aspx</link><pubDate>Sun, 25 Nov 2007 22:37:45 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1356399</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1356399</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1356399</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/11/25/typetypeconverter-vs-typenameconverter.aspx#comments</comments><description>&lt;p&gt;&lt;a title="TypeTypeConverter - The Type TypeConverter" href="http://msmvps.com/blogs/paulomorgado/archive/2007/07/09/typetypeconverter-the-type-typeconverter.aspx" target="_blank"&gt;Some time ago&lt;/a&gt; I complained about the fact that a &lt;a title="TypeConverter Class" href="http://msdn2.microsoft.com/library/System.ComponentModel.TypeConverter.aspx" target="_blank"&gt;TypeConverter&lt;/a&gt; for &lt;a title="Type Class" href="http://msdn2.microsoft.com/library/System.Type.aspx" target="_blank"&gt;Type&lt;/a&gt;s was missing from the &lt;a title=".NET Framework" href="http://msdn2.microsoft.com/netframework/" target="_blank"&gt;.NET Framework&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;At the time I had search for one in the framework but only found internal or private implementations.&lt;/p&gt; &lt;p&gt;As it turns out, the version 2.0 of the .NET Framework introduced a &lt;a title="TypeNameConverter Class" href="http://msdn2.microsoft.com/library/System.Configuration.TypeNameConverter.aspx" target="_blank"&gt;TypeNameConverter&lt;/a&gt; that does practically the same thing as my &lt;strong&gt;TypeTypeConverter&lt;/strong&gt;, beside the poor naming.&lt;/p&gt; &lt;p&gt;I say poor naming because the documentation for &lt;a title="TypeConverter Class" href="http://msdn2.microsoft.com/library/System.ComponentModel.TypeConverter.aspx" target="_blank"&gt;TypeConverter&lt;/a&gt; states that &amp;quot;&lt;em&gt;The most common type of converter is one that converts to and from a text representation.&lt;/em&gt;&amp;quot;. This converter does not convert from text to a &lt;strong&gt;Type&lt;/strong&gt; &lt;strong&gt;Name&lt;/strong&gt; but to an instance of &lt;strong&gt;Type&lt;/strong&gt;. Nevertheless, it&amp;#39;s in the framework and you should use this one instead of mine.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1356399" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category></item><item><title>.NET Framework 2.0 Service Pack 1 and .NET Framework Service Pack 1 available as a standalone download</title><link>http://msmvps.com/blogs/paulomorgado/archive/2007/11/22/net-framework-2-0-service-pack-1-and-net-framework-service-pack-1-available-as-a-standalone-download.aspx</link><pubDate>Thu, 22 Nov 2007 05:43:43 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1346550</guid><dc:creator>Paulo Morgado</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/rsscomments.aspx?PostID=1346550</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/paulomorgado/commentapi.aspx?PostID=1346550</wfw:comment><comments>http://msmvps.com/blogs/paulomorgado/archive/2007/11/22/net-framework-2-0-service-pack-1-and-net-framework-service-pack-1-available-as-a-standalone-download.aspx#comments</comments><description>&lt;p&gt;For those who can&amp;#39;t (or don&amp;#39;t want to) deploy .NET Framework 3.5, the service packs included for the 2.0 and 3.0 versions of the framework are available as standalone downloads.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="Microsoft .NET Framework 2.0 Service Pack 1 (x86)" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=79bc3b77-e02c-4ad3-aacf-a7633f706ba5" target="_blank"&gt;Microsoft .NET Framework 2.0 Service Pack 1 (x86)&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a title="Microsoft .NET Framework 2.0 Service Pack 1 (x64)" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=029196ed-04eb-471e-8a99-3c61d19a4c5a" target="_blank"&gt;Microsoft .NET Framework 2.0 Service Pack 1 (x64)&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a title="Microsoft .NET Framework 3.0 Service Pack 1" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=ec2ca85d-b255-4425-9e65-1e88a0bdb72a"&gt;Microsoft .NET Framework 3.0 Service Pack 1&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1346550" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/.NET/default.aspx">.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WinForms/default.aspx">WinForms</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/SoftDev/default.aspx">SoftDev</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/Microsoft/default.aspx">Microsoft</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MSDN/default.aspx">MSDN</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/MVP/default.aspx">MVP</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/VisualStudio/default.aspx">VisualStudio</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WCF/default.aspx">WCF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WPF/default.aspx">WPF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WF/default.aspx">WF</category><category domain="http://msmvps.com/blogs/paulomorgado/archive/tags/WindowsClient/default.aspx">WindowsClient</category></item></channel></rss>