<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/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>Andru's WebLog</title><link>http://weblogs.asp.net/andresv/default.aspx</link><description>&lt;font face='Courier New' size='3'&gt;&lt;span style='color:green;'&gt;//Comments about technology and software architecture&lt;/span&gt; &lt;br&gt;
MySelf.Persist();
&lt;/font&gt;</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Add Blackberry support to Forms Server 2007 or Sharepoint 2007</title><link>http://weblogs.asp.net/andresv/archive/2008/06/07/add-blackberry-support-to-forms-server-2007-or-sharepoint-2007.aspx</link><pubDate>Sat, 07 Jun 2008 13:40:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6255647</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=6255647</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2008/06/07/add-blackberry-support-to-forms-server-2007-or-sharepoint-2007.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;&amp;nbsp;A few months ago I was the architect for a project involving Microsoft Forms Server 2007 and we needed to support viewing Infopath forms on mobile devices, specifically Blackberry devices.&lt;/P&gt;
&lt;P mce_keep="true"&gt;The Microsoft Forms Server 2007 is a striped down Sharepoint 2007 server&amp;nbsp;so all Infopath forms web rendering for mobile devices is done through the ASP.NET mobile controls support.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Unfortunately, Blackberry devices aren't recognized so Infopath forms are render as standard web forms, wich aren't supported by Blackberry devices. Luckily for us, adding support for additional devices is not difficult and can be done by adding some information to a&amp;nbsp;"&lt;STRONG&gt;compat.browser&lt;/STRONG&gt;" file found in the "App_Browsers" folder inside the Sharepoint virtual directory. In this file you need to add the following:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;lt;!-- BlackBerry RIM Browser --&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;browser id="RIM40" parentID="Default"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;identification&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;userAgent match="BlackBerry" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/identification&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capabilities&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="isMobileDevice" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="javascript" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="ecmascriptversion" value="1.3" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="version" value="${version}" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="majorVersion" value="${major}" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="minorVersion" value="${minor}" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="supportsCss" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="frames" value="false" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="cookies" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="isColor" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="requiresLeadingPageBreak" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="requiresUniqueFilePathSuffix" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="supportsBold" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="supportsFontSize" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="supportsImageSubmit" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="supportsItalic" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;capability name="requires303Redirect" value="true" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/capabilities&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/browser&amp;gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;With that your Blackberry browsers will be recognized as mobile devices and our Infopath Forms Server will be able to render the proper content.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Hope you find this useful, seeU!&lt;/P&gt;
&lt;P&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;Systems&amp;nbsp;Architect&lt;/P&gt;
&lt;P&gt;Leader of the C# Community of the &lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT color=#000000&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6255647" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/Sharepoint/default.aspx">Sharepoint</category></item><item><title>Retina.NET 2.0 Core &amp; Designer Released</title><link>http://weblogs.asp.net/andresv/archive/2008/05/20/retina-net-2-0-core-amp-designer-released.aspx</link><pubDate>Tue, 20 May 2008 18:53:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6204967</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=6204967</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2008/05/20/retina-net-2-0-core-amp-designer-released.aspx#comments</comments><description>&lt;P&gt;Hey! just a quick announcement to say that I released a new version of Retina.NET Core and also the new DSL designer for VS2008.&lt;/P&gt;
&lt;P&gt;You can download the precompiled binaries or source code from&amp;nbsp;the &lt;A href="http://www.codeplex.com/retina" mce_href="http://www.codeplex.com/retina"&gt;&lt;FONT color=#666666&gt;CodePlex Retina.NET&lt;/FONT&gt;&lt;/A&gt; page. As always, comments / suggestions / critics...&amp;nbsp; are all welcome.&lt;/P&gt;
&lt;P&gt;Thanks in advance,&lt;/P&gt;
&lt;P&gt;PS: the Retina Setup package still has some older documentation, I know...&amp;nbsp;&amp;nbsp; sorry for that but I preferred to release the bits and fix the documentation later (I hear some helping offering there...?)&lt;/P&gt;
&lt;P&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;Systems&amp;nbsp;Architect&lt;/P&gt;
&lt;P&gt;Leader of the C# Community of the &lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT color=#000000&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6204967" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/ORM/default.aspx">ORM</category><category domain="http://weblogs.asp.net/andresv/archive/tags/Retina.NET/default.aspx">Retina.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NET+2.0/default.aspx">NET 2.0</category><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Retina.NET project active again</title><link>http://weblogs.asp.net/andresv/archive/2008/04/21/retina-net-project-active-again.aspx</link><pubDate>Mon, 21 Apr 2008 12:34:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6118687</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=6118687</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2008/04/21/retina-net-project-active-again.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;The Retina.NET project was dormant for some time, but with some help I'm bringing it back to life.&lt;/P&gt;
&lt;P&gt;The last official release was made on October 2006 (v1.0.8.0) and at that time I was working on the new v2 release, but I never finished that task and so the project came to a stop.&lt;/P&gt;
&lt;P&gt;Nonetheless, I have managed to include a couple of interesting changes in those internal Retina.NET versions, and I have found that some other people also have made some useful changes in their own Retina.NET version and are offering to integrate some of those new features with the official project sources.&lt;/P&gt;
&lt;P&gt;So, if you used Retina.NET in some project and made a change or addition to the source code and you would like to see those changes included in&amp;nbsp;an official project release, please stop by the &lt;A href="http://www.codeplex.com/retina" mce_href="http://www.codeplex.com/retina"&gt;CodePlex Retina.NET&lt;/A&gt; page or and let me know.&lt;/P&gt;
&lt;P&gt;Also, if you want to participate in the project in some way, you have an idea to implement some cool new feature on Retina.NET, or you have some time to improve existing documentation, samples or Unit Tests, please stop by the Retina.NET CodePlex site and let me know.&lt;/P&gt;
&lt;P&gt;I'm actively working on getting the new DSL designer that will replace the old EntityGen project, but there is some other work in progress like: LCG support, Generics support, LINQ support&amp;nbsp;&amp;amp;&amp;nbsp;VistaDB support.&lt;/P&gt;
&lt;P&gt;Thanks in advance,&lt;/P&gt;
&lt;P&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;Systems&amp;nbsp;Architect&lt;/P&gt;
&lt;P&gt;Leader of the C# Community of the &lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;Microsoft Users Group Argentina&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6118687" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/ORM/default.aspx">ORM</category><category domain="http://weblogs.asp.net/andresv/archive/tags/Retina.NET/default.aspx">Retina.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NET+2.0/default.aspx">NET 2.0</category><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Created SharpHSQL project on CodePlex</title><link>http://weblogs.asp.net/andresv/archive/2008/04/04/created-sharphsql-project-on-codeplex.aspx</link><pubDate>Fri, 04 Apr 2008 15:12:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6065146</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=6065146</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2008/04/04/created-sharphsql-project-on-codeplex.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;Guys, as your requests I have created a CodePlex workspace for this project and uploaded the latests sources &amp;amp; binaries I have. There is still more work to be done before this could be considered "production ready", so let's hope to revive this little project and make it something useful.&lt;/P&gt;
&lt;P mce_keep="true"&gt;It's published at &lt;A href="http://www.codeplex.com/sharphsql"&gt;http://www.codeplex.com/sharphsql&lt;/A&gt; as expected...&lt;/P&gt;
&lt;P mce_keep="true"&gt;Thanks you all for your comments!&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;Systems&amp;nbsp;Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6065146" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category></item><item><title>Installed Vista SP1</title><link>http://weblogs.asp.net/andresv/archive/2008/04/04/installed-vista-sp1.aspx</link><pubDate>Fri, 04 Apr 2008 13:07:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6064835</guid><dc:creator>andresv</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=6064835</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2008/04/04/installed-vista-sp1.aspx#comments</comments><description>&lt;FONT face=Tahoma&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"&gt;A couple weeks ago I got a Vista SP1 from Technet and decided to give it a try on my personal notebook. I tried installing SP1 over the existing &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;Vista&lt;/st1:place&gt; instance but it failed (after several attempts with extensive web search and after aplying every tip &amp;amp; trick / recommendation found, I give up) so I tried the upgrade path.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"&gt;So, I downloaded&amp;nbsp;a &lt;st1:place w:st="on"&gt;Vista&lt;/st1:place&gt; version with SP1 integrated, burned the image and launched the setup. To my surprise, the upgrade option was disabled (even if I boot from the Vista SP1 DVD) so I have only one option at this point.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"&gt;I went for the full install. It might sound a drastic measure but I really wanted SP1, so I did it. Made a full backup of everything, run the "Easy Transfer" (very handy) program and started the new setup.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"&gt;After that, I had the task of rebuilding my machine to the previous state, installing all software I use on daily basis first and the other&amp;nbsp;stuff on "needed" basis.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"&gt;This was a lot of work and I wouldn't recommend it to anyone, but I'm very happy with my decision because this new &lt;st1:place w:st="on"&gt;Vista&lt;/st1:place&gt; is working flawlessly so far. My hibernation problems went away, the same for the unexplained high CPU usage from time to time, and the overall experience is now what I expect from my machine.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"&gt;So, if you are still waiting, go for it! Vista SP1 will make your life easier and pleasant....&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt; 
&lt;P&gt;&lt;/FONT&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;Systems&amp;nbsp;Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6064835" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/Vista/default.aspx">Vista</category></item><item><title>Introduction to WCF Extensibility article published at LevelExtreme Magazine</title><link>http://weblogs.asp.net/andresv/archive/2008/02/18/introduction-to-wcf-extensibility-article-published-at-levelextreme-magazine.aspx</link><pubDate>Tue, 19 Feb 2008 01:37:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:5817202</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=5817202</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2008/02/18/introduction-to-wcf-extensibility-article-published-at-levelextreme-magazine.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;&lt;FONT face=Tahoma&gt;Hi everybody! I have been off radar quite a while, so I'm just writting this quick post to make everybody know that I have written and published (Thanks Martín Salías) a nice article (shameless plug, I know...) about WCF extenssibility mechanisms.&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;The article can be viewed online at &lt;A class="" href="http://www.levelextreme.net/" target=_blank mce_href="http://www.levelextreme.net/"&gt;LevelExtreme Magazine WebSite&lt;/A&gt;&amp;nbsp;home page or directly at &lt;A class="" href="http://www.levelextreme.net/ViewPageArticle.aspx?Session=42372F7961325A585334453D2072675778583231425A5561674C6856612F30694631513D3D" target=_blank mce_href="http://www.levelextreme.net/ViewPageArticle.aspx?Session=42372F7961325A585334453D2072675778583231425A5561674C6856612F30694631513D3D"&gt;the article&lt;/A&gt;.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Enjoy!&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;EDS Top Gun - .NET Capability Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=5817202" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/WPF/default.aspx">WPF</category></item><item><title>Adding a database project reference (DBPro) to a WIX 3.0 project</title><link>http://weblogs.asp.net/andresv/archive/2007/07/17/adding-a-database-project-reference-dbpro-to-a-wix-3-0-project.aspx</link><pubDate>Tue, 17 Jul 2007 18:03:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:3192630</guid><dc:creator>andresv</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=3192630</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2007/07/17/adding-a-database-project-reference-dbpro-to-a-wix-3-0-project.aspx#comments</comments><description>&lt;P&gt;I'm building some installers for the project currently working on, and because we use TFS and Team Build I wanted to have the ability of creating MSI packages from the build script run at the build server.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Unfortunately&amp;nbsp;MSBUILD doesn't natively support Visual Studio Setup projects so they won't compile your nice MSI setup packages out of the box. Of course you can just modify the MSBUILD script to add an EXEC task&amp;nbsp;to run&amp;nbsp;VS2005&amp;nbsp;in order to&amp;nbsp;build the setup project, but that requires splitting the original solution (or creating a new one just for compiling the setup project) and this new setup project can't contain references to projects (all references must be changed into binary references).&lt;/P&gt;
&lt;P&gt;For those reasons I explored WIX, the new (and open source) Windows Installer for Xml project from Microsoft, published in SourceForge and found in the Url &lt;A href="http://wix.sourceforge.net/" mce_href="http://wix.sourceforge.net/"&gt;http://wix.sourceforge.net/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;I started with WIX 3.0 because it fully supports MSBUILD, but the version I downloaded had some serious drawbacks (it lacked support for Votive project variables, for example) and that was a show stopper for me. I also tried the stable WIX 2.0 release, but the lack of MSBUILD support and some other bugs (like no support for dots in project names) was also a show stopper for me. After some time I download the latest (unstable) version of WIX 3.0 (build 3.0.3106.0) and everything worked like a charm. Integration with MSBUILD was beautiful, Votive project variables were supported again and even the dots in the project names works as expected!&lt;/P&gt;
&lt;P&gt;I started to code the installer and I wanted to include some SQL scripts to create some databases on install, and I wanted to automate this as much as possible. I have some VS2005 DBpro database projects and wanted to include the output scripts from those projects into my WIX project. The first version just referenced the SQL files from the projects and compiled just fine in my desktop machine, but failed miserably when compiled on the build server because the output paths are very different (Team Build just copies all output from compiled projects in the DROP folder defined in the build script, and don't use the output folder defined in the source projects).&lt;/P&gt;
&lt;P&gt;So, the solution was to include a project reference in the WIX project to the DbPro projects, and later use those project variables to include the output script files in the setup package. So far, so good....&amp;nbsp; except that Visual Studio won't let you add this kind of project reference!&amp;nbsp; If you try that you will get a nice dialog with an "Object Reference Not Set" error message. Not very helpful....&lt;/P&gt;
&lt;P&gt;The solution is to add manually those references by editing the source WIX project file. You can do that by unloading the project in Visual Studio (right click on the project and select "Unload Project") and then right click again on the unloaded project and select the "Edit" option from the context menu. You can always use the good old notepad to do this, but the Visual Studio way is easier (and cooler...). After editing the source project file you can test everything by reloading the project (right click and click the "Reload Project" menu item).&lt;/P&gt;
&lt;P&gt;Inside the WIX project file, near the end of the file (and inside the "ItemGroup" xml tag) you must add something like:&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;ProjectReference&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;Include&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;..\..\..\Databases\Workflow.Persistence\Persistence.dbproj&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Name&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT size=2&gt;Workflow.Persistence&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Name&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Project&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT size=2&gt;{7b9401a5-5922-49ed-80ed-1d163f0036dd}&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Project&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Private&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/FONT&gt;&lt;FONT size=2&gt;True&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Private&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;ProjectReference&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P mce_keep="true"&gt;Inside the&amp;nbsp;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Project&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/FONT&gt;&amp;nbsp;xml tag you must type the project GUID you want to reference, and this project GUID can be found inside the project being references itself. In this case, I must open the "Persistence.dbproj" file and look for the "ProjectGuid" xml tag: &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;lt;Project DefaultTargets="Build" xmlns="&lt;A href="http://schemas.microsoft.com/developer/msbuild/2003"&gt;http://schemas.microsoft.com/developer/msbuild/2003&lt;/A&gt;"&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;PropertyGroup&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Configuration Condition=" '$(Configuration)' == '' "&amp;gt;Default&amp;lt;/Configuration&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Name&amp;gt;"DatabaseProject"&amp;lt;/Name&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;SchemaVersion&amp;gt;2.0&amp;lt;/SchemaVersion&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;&amp;lt;ProjectGuid&amp;gt;{4d8e8950-2bf5-4315-a539-ac80f7959187}&amp;lt;/ProjectGuid&amp;gt;&lt;BR&gt;&lt;/STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ShowWizard&amp;gt;True&amp;lt;/ShowWizard&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;OutputType&amp;gt;Database&amp;lt;/OutputType&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;DBProduct&amp;gt;SQL Server 2005&amp;lt;/DBProduct&amp;gt;&lt;BR&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;After that, you should have those nice database project references in your WIX project, like this:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;IMG title="WIX DbPro References" style="WIDTH: 307px; HEIGHT: 393px" height=393 alt="WIX DbPro References" src="http://byfiles.storage.msn.com/y1pkn3FT78Zqpo5SXaDQSSMdIkpRxk2HlYrIyq1FypYtdlmNRCxqF8K14RsXvT1p5IDeQ7rFWStDI4" width=307 mce_src="http://byfiles.storage.msn.com/y1pkn3FT78Zqpo5SXaDQSSMdIkpRxk2HlYrIyq1FypYtdlmNRCxqF8K14RsXvT1p5IDeQ7rFWStDI4"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;Later, in the WIX setup script you can reference the output of those projects like this:&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Binary&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;Id&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;CatalogDbScript&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;SourceFile&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;$(var.Catalog.TargetDir)\WFTCatalog.sql&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; /&amp;gt; &lt;BR&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Binary&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;Id&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;PersistenceDbScript&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;SourceFile&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;$(var.Persistence.TargetDir)\WFTPersistence.sql&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; /&amp;gt; &lt;BR&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Binary&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;Id&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;TrackingDbScript&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;SourceFile&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;$(var.Tracking.TargetDir)\WFTTracking.sql&lt;/FONT&gt;&lt;FONT size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; /&amp;gt; &lt;/FONT&gt;&lt;/FONT&gt;
&lt;P mce_keep="true"&gt;As you can see, I'm adding a binary file to the setup package using the "TargetDir" variable for the referenced project. Isn't that nice?&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Usign the cool WIX "SqlExtension" I can very easily include and run those database scripts when installing my project, but that's for another post.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;EDS Top Gun - .NET Capability Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=3192630" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/NET+2.0/default.aspx">NET 2.0</category><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NETFX3/default.aspx">NETFX3</category><category domain="http://weblogs.asp.net/andresv/archive/tags/WIX/default.aspx">WIX</category></item><item><title>Any interest in continue the SharpHSql project?</title><link>http://weblogs.asp.net/andresv/archive/2007/06/08/any-interest-in-continue-the-sharphsql-project.aspx</link><pubDate>Sat, 09 Jun 2007 00:24:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2763476</guid><dc:creator>andresv</dc:creator><slash:comments>15</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=2763476</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2007/06/08/any-interest-in-continue-the-sharphsql-project.aspx#comments</comments><description>&lt;P&gt;I have kind of abandoned this little and nice project, but I feel bad....&amp;nbsp; I still resist to give up on this and for that reason I'm trying to get two things from you guys:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Comments saying that you would like the project to be continued or not.&lt;/LI&gt;
&lt;LI&gt;Maybe some helping hand here in fixing and changing the things that need to be redesigned or improved.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;Well, I will be waiting your response.....&lt;/P&gt;
&lt;P&gt;Thanks in advance!&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;EDS Top Gun - .NET Capability Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2763476" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/SharpHsql/default.aspx">SharpHsql</category><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Retina.NET project moved to CodePlex</title><link>http://weblogs.asp.net/andresv/archive/2007/06/08/retina-net-project-moved-to-codeplex.aspx</link><pubDate>Sat, 09 Jun 2007 00:04:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2763446</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=2763446</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2007/06/08/retina-net-project-moved-to-codeplex.aspx#comments</comments><description>&lt;P&gt;As you probably know the GotDotNet site is being phased out in favor of the new CodePlex, so I have moved the Retina.NET project to &lt;A href="http://www.codeplex.com/retina"&gt;http://www.codeplex.com/retina&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;I have uploaded the last stable sources and binaries (v1.0.8.0) and sources to the CodePlex TFS servers for the latest (still incomplete) Retina.NET 2.0. I'm still trying to find some time to finish the big refactor to implement generic methods and collections in all Retina.NET classes, but that task proven to be more difficult than I have foreseen.&lt;/P&gt;
&lt;P&gt;Feel free to download the sources, binaries or whatever you find in the site, and if you have the time to contribute with something that would be more than welcome.&lt;/P&gt;
&lt;P&gt;Thanks!&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;EDS Top Gun - .NET Capability Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2763446" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/ORM/default.aspx">ORM</category><category domain="http://weblogs.asp.net/andresv/archive/tags/Retina.NET/default.aspx">Retina.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NET+2.0/default.aspx">NET 2.0</category><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Vista RTM: so far, so good</title><link>http://weblogs.asp.net/andresv/archive/2007/06/08/vista-rtm-so-far-so-good.aspx</link><pubDate>Fri, 08 Jun 2007 23:47:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:2763414</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=2763414</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2007/06/08/vista-rtm-so-far-so-good.aspx#comments</comments><description>&lt;P&gt;A couple of months ago I upgraded my home PC with the RTM version of Windows Vista Ultimate. I performed a clean install because the previous RC2 started to degrade and turned out to be a faulty disk drive. I have a SATA Raid controller on my motherboard and I was using a stripe-set volume configuration with two identical 80GB SATA drives, but one of them failed and I had to undo the RAID and install the new Vista using only&amp;nbsp;one disk.&lt;/P&gt;
&lt;P&gt;After that, I have to say that my new Vista setup is running very smoothly. My machine is an old P4C 2.4Ghz with 2GB DDR RAM in dual channel configuration, at the time I build this baby it was the top of the line....&amp;nbsp; and still have some punch....&lt;/P&gt;
&lt;P&gt;The only thing I deeply regret is the fact I have a Microsoft Sidewinder Force Feedback joystick with the old DB15 joystick connector and it doesn't work anymore in Vista. I miss my force feedback joystick very much.....&amp;nbsp;&amp;nbsp; support for old DB15 devices has been removed from Vista in favor of newer USB devices.....&amp;nbsp;&amp;nbsp; I think that's too bad!&lt;/P&gt;
&lt;P&gt;Appart from that, I'm very pleased with Vista, and when I get my new notebook I will install Vista on it with no doubt.&lt;/P&gt;
&lt;P&gt;See U!&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Andrés G Vettori&lt;BR&gt;MCSE/MCSD/MCT&lt;BR&gt;EDS Top Gun - .NET Capability Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma&gt;Leader of the C# Community of the &lt;/FONT&gt;&lt;A href="http://www.mug.org.ar/" mce_href="http://www.mug.org.ar/"&gt;&lt;FONT face=Tahoma color=#223355 size=2&gt;Microsoft Users Group Argentina&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=2763414" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/Vista/default.aspx">Vista</category></item><item><title>WCF Extensibility - Part 2</title><link>http://weblogs.asp.net/andresv/archive/2006/10/23/WCF-Extensibility-_2D00_-Part-2.aspx</link><pubDate>Mon, 23 Oct 2006 16:05:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:713860</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=713860</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2006/10/23/WCF-Extensibility-_2D00_-Part-2.aspx#comments</comments><description>&lt;h2 style="margin: 12pt 0in 3pt"&gt;&lt;em&gt;Service Description&lt;/em&gt;&lt;/h2&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&lt;strong&gt;&lt;em&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&amp;nbsp;&lt;img style="width: 600px; height: 447px" src="http://tkfiles.storage.msn.com/x1pCxs_ZzBE0DzUmNecu_dKxW45PtZuplEOOqcJGrJQ42Q99tABTk6qIqqbz5GfePZ1TMZRGDkCz46rMU1l-H1QwZzyKgUItU9mDogjcoSWNEUxjOPvMAkwlHcdiYDTqmv5d7piCO6JsOI" alt="Service Description at Runtime" title="Service Description at Runtime" width="600" height="447" /&gt;&lt;/p&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&lt;strong&gt;&lt;em&gt;&lt;font face="Verdana"&gt;Figure 2. ServiceDescription at runtime&lt;/font&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&lt;font face="Verdana"&gt;The Service Description is the heart of the service and is created when a &lt;strong&gt;ServiceHost&lt;/strong&gt; or client &lt;strong&gt;ChannelFactory&lt;/strong&gt; is created to describe all aspects of the service, endpoints and behaviors. This description is a logical view of what the WCF runtime is going to build when the Open method on the &lt;strong&gt;ServiceHost&lt;/strong&gt; is executed, and also is used to generate the WSDL and policy metadata for the service. This metadata is exposed through the &lt;strong&gt;ServiceDescription&lt;/strong&gt; class and the &lt;strong&gt;Description&lt;/strong&gt; property on the &lt;strong&gt;ServiceHost&lt;/strong&gt; and can be changed, for example, by injecting behaviors. To build the &lt;strong&gt;ServiceDescription&lt;/strong&gt; information the WCF runtime first reflects over the service types and then it loads the service configuration. This information is then used when you execute the &lt;strong&gt;Open&lt;/strong&gt; method of the &lt;strong&gt;ServiceHost&lt;/strong&gt; to build the runtime.&lt;/font&gt;&lt;/p&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&lt;font face="Verdana"&gt;In the code shown below you can see how the service description information could be accessed and modified:&lt;/font&gt;&lt;/p&gt;&lt;p style="margin: 6pt 0in 0pt" class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;pre style="margin-bottom: 0pt; vertical-align: top"&gt;&lt;span style="font-size: 9pt; color: green"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;// Construct the ServiceHost&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;ServiceHost host = new ServiceHost(typeof(EchoService), new Uri(&amp;ldquo;http://localhost/echo&amp;rdquo;) );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: green"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;// Add endpoints to description&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;host.AddServiceEndpoint(typeof(IEchoService), new BasicHttpBinding(), &amp;ldquo;&amp;rdquo;);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: green"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;// You can access the Description property of the host&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;Console.Writeline(host.Description.ServiceType);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: green"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;// And you can change things before calling Open&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;foreach( ServiceEndpoint endpoint in host.Description.Endpoints )&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: green"&gt;// Add My behavior to all Http endpoints&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;span style="font-size: 9pt"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;If( endpoint.Uri.Scheme == &amp;ldquo;http&amp;rdquo; )&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;endpoint.Behaviors.Add( new MyHttpBehavior() );&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: black"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; color: green"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;// Open the Host&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt"&gt;&lt;font style="background-color: #eeeeee"&gt;&lt;font face="Courier New"&gt;Host.Open();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;Next post: Building a Custom ServiceHost&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Andr&amp;eacute;s G Vettori&lt;br /&gt;MCSE/MCSD/MCT&lt;br /&gt;EDS Top Gun - .NET Capability Architect&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Leader of the C# Community of the &lt;/font&gt;&lt;a href="http://www.mug.org.ar/"&gt;&lt;font face="Tahoma" size="2" color="#223355"&gt;Microsoft Users Group Argentina&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=713860" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/SOA/default.aspx">SOA</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/WCF/default.aspx">WCF</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NETFX3/default.aspx">NETFX3</category></item><item><title>WCF Extensibility - Part 1</title><link>http://weblogs.asp.net/andresv/archive/2006/10/20/WCF-Extensibility-_2D00_-Part-1.aspx</link><pubDate>Fri, 20 Oct 2006 18:12:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:696248</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=696248</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2006/10/20/WCF-Extensibility-_2D00_-Part-1.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;What we have in WCF&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;WCF has a design that clearly shows a very hard work of many talented people for a long time, and that kind of effort can only be a good thing.&lt;/p&gt;&lt;p&gt;The first thing you note when start working with WCF is the simplicity of the programming model, a thing that COM+ and Enterprise Services was very good at providing some interesting programming models, like declarative programming using attributes, that WCF tried to incorporate.&lt;/p&gt;&lt;p&gt;After that first impression you start digging a little more into the WCF inner workings and you note that it has all the flexibility and extensibility of WSE and Remoting, and then some more, and also supports the communication style of Remoting (although the WCF team doesn&amp;#39;t want to encourage its use) side by side with the full Service Orientation support. &lt;/p&gt;&lt;p&gt;As WCF really is the unification of all previous communication technologies and development paradigms for application and integration scenarios, we can expect to find a more complex architecture underneath, and as I said before it can be a little intimidating when you start looking into all those interfaces and options for extensibility.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;img style="width: 600px; height: 374px" src="http://tkfiles.storage.msn.com/x1pCxs_ZzBE0DzUmNecu_dKxZKcDWfRPRPtaLgOgvBGQ7400LKWD4BMG1SSIR-7fBxwQ8gz7EYOnzPjkwpIul6daVo5xH4-eswhsvVacH94esvLDJRUygVTW1QfZdjbRpgjRAxMoPl0xyc" alt="WCF Architecture" title="WCF Architecture" width="600" height="374" /&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;Figure 1. WCF Architecture&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;As we can see in the simplified architecture diagram shown above, WCF has two main layers where extensibility can be applied and the first decision you have to make is at what layer you need to apply the extensibility you need:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Customizations at the service model level: this is the higher level of abstraction in WCF and they apply to the higher level constructs like service, contracts and operations. Most common customizations are made at this level and they relate to the fact that you can change the local behavior of any of those service constructs.&lt;/li&gt;&lt;li&gt;Customizations at the messaging level: this is the lower level of the WCF infrastructure where you have protocols and transport channels. In this layer the message is serialized and transmitted using the selected transport, also protocol rules are applied (like reliable messaging) and security (like encryption). Customizations here are needed when you need to modify &amp;quot;what&amp;#39;s on the wire&amp;quot;.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Other extensibility points beyond these two include Bindings, Security, Metadata, Serializers and Hosting but they are somewhat less common in typical applications.&lt;/p&gt;&lt;p&gt;The three ways of customizing the service layer include:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Manipulate the Service Description.&lt;/li&gt;&lt;li&gt;Injecting Behaviors by hand.&lt;/li&gt;&lt;li&gt;Overriding ServiceHost / ChannelFactory&amp;lt;T&amp;gt;.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;We are going to dive into these three customization methods in the next posts.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Next post: WCF Service Description Layer&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;Enjoy!&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Andr&amp;eacute;s G Vettori&lt;br /&gt;MCSE/MCSD/MCT&lt;br /&gt;EDS Top Gun - .NET Capability Architect&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Leader of the C# Community of the &lt;/font&gt;&lt;a href="http://www.mug.org.ar/"&gt;&lt;font face="Tahoma" size="2" color="#223355"&gt;Microsoft Users Group Argentina&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=696248" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/SOA/default.aspx">SOA</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/WCF/default.aspx">WCF</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NETFX3/default.aspx">NETFX3</category></item><item><title>Understanding WCF Extensibility</title><link>http://weblogs.asp.net/andresv/archive/2006/10/19/Understanding-WCF-Extensibility.aspx</link><pubDate>Thu, 19 Oct 2006 20:15:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:689792</guid><dc:creator>andresv</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=689792</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2006/10/19/Understanding-WCF-Extensibility.aspx#comments</comments><description>&lt;p&gt;I have written a white paper on WCF extensibility and I would like to share it with the community so I have&amp;nbsp;attached&amp;nbsp;a copy&amp;nbsp;to this post in Word 2003 format.&lt;/p&gt;&lt;p&gt;&amp;nbsp;Enjoy!&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Andr&amp;eacute;s G Vettori&lt;br /&gt;MCSE/MCSD/MCT&lt;br /&gt;EDS Top Gun - .NET Capability Architect&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Leader of the C# Community of the &lt;/font&gt;&lt;a href="http://www.mug.org.ar/"&gt;&lt;font face="Tahoma" size="2" color="#223355"&gt;Microsoft Users Group Argentina&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=689792" width="1" height="1"&gt;</description><enclosure url="http://weblogs.asp.net/andresv/attachment/689792.ashx" length="605184" type="application/msword" /><category domain="http://weblogs.asp.net/andresv/archive/tags/SOA/default.aspx">SOA</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/WCF/default.aspx">WCF</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NETFX3/default.aspx">NETFX3</category></item><item><title>Upgraded to Vista RC2</title><link>http://weblogs.asp.net/andresv/archive/2006/10/17/Upgraded-to-Vista-RC2.aspx</link><pubDate>Tue, 17 Oct 2006 14:37:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:675314</guid><dc:creator>andresv</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=675314</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2006/10/17/Upgraded-to-Vista-RC2.aspx#comments</comments><description>&lt;p&gt;Last week I upgraded my personal machine to the Vista RC2 version. It was running RC1 and for the most part it worked well, except for some blue screens and some extrange behavior with my video card making my machine to loose video after some time. This machine had Vista Beta2 but this version started to degrade after some time to the point I couldn&amp;#39;t even login. At that time I recovered a backup of everything I needed and perform a clean install of&amp;nbsp;RC1.&lt;/p&gt;&lt;p&gt;The upgrade operation went smooth and I have to say that RC2 is working better for me than RC1, so far no blue screens or loosing video signal!&lt;/p&gt;&lt;p&gt;Anyway, there are some small quirks (like some Sidebar gadgets not working) but nothing critical. I have a nice video board (ATI Radeon 9600XT) so glass is no problem but the ATI drivers are rather buggy. I really expect them to make a better job for the final versions of the drivers.&lt;/p&gt;&lt;p&gt;The general performance is good and so far I have no complains on this release, so give it a try and you will be surprised.&lt;/p&gt;&lt;p&gt;Please remember that for running Vista inside a virtual machine you will need some of the latests (ergo, BETA) versions of Virtual PC or Virtual Server.&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Andr&amp;eacute;s G Vettori&lt;br /&gt;MCSE/MCSD/MCT&lt;br /&gt;EDS Top Gun - .NET Capability Architect&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Leader of the C# Community of the &lt;/font&gt;&lt;a href="http://www.mug.org.ar/"&gt;&lt;font face="Tahoma" size="2" color="#223355"&gt;Microsoft Users Group Argentina&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=675314" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/andresv/archive/tags/Tech+Edge/default.aspx">Tech Edge</category><category domain="http://weblogs.asp.net/andresv/archive/tags/Vista/default.aspx">Vista</category></item><item><title>WS-Compression, WCF and Named Pipes</title><link>http://weblogs.asp.net/andresv/archive/2006/10/12/WS_2D00_Compression_2C00_-WCF-and-Named-Pipes.aspx</link><pubDate>Thu, 12 Oct 2006 21:37:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:657776</guid><dc:creator>andresv</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/andresv/rsscomments.aspx?PostID=657776</wfw:commentRss><comments>http://weblogs.asp.net/andresv/archive/2006/10/12/WS_2D00_Compression_2C00_-WCF-and-Named-Pipes.aspx#comments</comments><description>&lt;p&gt;I found the WCF version of the WSE3 compression filters on the Pablo Cribaro&amp;#39;s &lt;a href="http://weblogs.asp.net/cibrax/archive/2006/09/13/WS_2D00_Compression-for-WCF-RC1-_2800_September_2900_.aspx" target="_blank" title="WCF Compression"&gt;blog&lt;/a&gt;&amp;nbsp;where he published an updated WCF RC1 version.&lt;/p&gt;&lt;p&gt;This code was first released by &lt;a href="http://blog.morty.info/PermaLink.aspx?guid=9ee6bf4b-643f-4dcc-8e15-8a07d0fe71dd" target="_blank" title="Morty&amp;acute;s Blog"&gt;Morty&lt;/a&gt; for WSE2. At that time we (&lt;a href="http://weblogs.shockbyte.com.ar/rodolfof/" target="_blank" title="Rodolfo@blog"&gt;Rodolfo Finochieti&lt;/a&gt; and I) make some improvements to that code, and later Rodolfo migrated this code to WSE3. Is very interesting how the community works....&lt;/p&gt;&lt;p&gt;The thing is the WCF version was having problems when used over a Named Pipes transport, so I decided to take some time and discovered some interesting behavior.&lt;/p&gt;&lt;p&gt;The problem occured in the ReadXml method of the CompressionMethod.cs class, and only fails when using TCP or NamedPipes, not on Http. So after&amp;nbsp;doing some debugging I found that in the case of the Http transport, when the Xml Reader was reading an XmlNode with attributes it first reads the StartElement and after that an EndElement. This behavior changes when you are using Named Pipes and after reading the XmlNode that has some attributes, the reader skips the EndNode completely and positions itself on the nect XmlNode.&lt;/p&gt;&lt;p&gt;I first made a quick fix just by asking the XmlReader if the next node was an EndElement before trying to execute a ReadEndElement, but it seems too much as a hack so I tryied another approach. &lt;/p&gt;&lt;p&gt;In the attached file I publish an updated version of the compression library for WCF (for RC1) and modified the CompressionMethod.cs so it doesn&amp;#39;t use attributes anymore, and in that way it works as expected regarding the transport being used.&lt;/p&gt;&lt;p&gt;If you ask me it looks like a bug on the XmlReader, because both messages was exactly the same (checked with trace) and this different behavior is totally unexpected.&lt;/p&gt;&lt;p&gt;I found other bug related to the use of Request/Reply channels with void contract methods. In that case a NULL message was sent back as response and therefore the code fails. On the CompressionInterceptor.cs class I have to check if the passed message was equal to null in the Compress and Decompress methods, and everything works as expected now.&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Andr&amp;eacute;s G Vettori&lt;br /&gt;MCSE/MCSD/MCT&lt;br /&gt;EDS Top Gun - .NET Capability Architect&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Tahoma"&gt;Leader of the C# Community of the &lt;/font&gt;&lt;a href="http://www.mug.org.ar/"&gt;&lt;font face="Tahoma" size="2" color="#223355"&gt;Microsoft Users Group Argentina&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=657776" width="1" height="1"&gt;</description><enclosure url="http://weblogs.asp.net/andresv/attachment/657776.ashx" length="34282" type="application/x-zip-compressed" /><category domain="http://weblogs.asp.net/andresv/archive/tags/NET+2.0/default.aspx">NET 2.0</category><category domain="http://weblogs.asp.net/andresv/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/andresv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/andresv/archive/tags/WCF/default.aspx">WCF</category><category domain="http://weblogs.asp.net/andresv/archive/tags/NETFX3/default.aspx">NETFX3</category></item></channel></rss>