<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Eric J. Smith's Weblog</title><subtitle type="html">CodeSmith, .NET, etc...</subtitle><id>http://weblogs.asp.net/ericjsmith/atom.aspx</id><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/default.aspx" /><link rel="self" type="application/atom+xml" href="http://weblogs.asp.net/ericjsmith/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20510.895">Community Server</generator><updated>2005-08-08T09:32:00Z</updated><entry><title>PLINQO at the Dallas .NET Users Group</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2009/07/07/plinqo-at-the-dallas-net-users-group.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2009/07/07/plinqo-at-the-dallas-net-users-group.aspx</id><published>2009-07-07T19:23:25Z</published><updated>2009-07-07T19:23:25Z</updated><content type="html">&lt;p&gt;This Thursday July 9th, Shannon Davidson and Tom DuPont will be talking about &lt;a href="http://plinqo.com"&gt;PLINQO&lt;/a&gt; at the &lt;a href="http://www.ddnug.net/Meetings/UpcomingMeetingsEvents/tabid/101/ctl/Details/mid/421/ItemID/45/Default.aspx?selecteddate=7/9/2009"&gt;Dallas .NET Users Group&lt;/a&gt; at Microsoft's Las Colinas Office in Irving, Texas.&lt;/p&gt;  &lt;p&gt;If you are in the area, we would love for you to stop by and see what PLINQO is all about. You might even win a free copy of CodeSmith!&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;When: &lt;/strong&gt;    &lt;br /&gt;Thursday, July 9th&amp;#160; &lt;br /&gt;Doors open at 6:00PM     &lt;br /&gt;Presentation starts at 6:30PM&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Where: &lt;/strong&gt;    &lt;br /&gt;Microsoft's Las Colinas Office     &lt;br /&gt;LC1 Building (Right Tower)     &lt;br /&gt;1st Floor, MPR Room,&amp;#160; &lt;br /&gt;(Left of the main security desk)&lt;/p&gt;  &lt;p&gt;7000 State Highway 161    &lt;br /&gt;Irving, TX 75039     &lt;br /&gt;&lt;a href="http://maps.google.com/maps?ie=UTF8&amp;amp;cid=0,0,16412747153943560073&amp;amp;fb=1&amp;amp;split=1&amp;amp;gl=us&amp;amp;dq=7000+State+Highway+161+Irving,+TX+75039&amp;amp;daddr=7000+State+Highway+161,+Irving,+TX+75039-2418&amp;amp;geocode=2443346843498901297,32.899279,-96.963109&amp;amp;ei=XsFSStH2OZaqtgfB2OWwCA&amp;amp;t=h&amp;amp;z=16"&gt;Map&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7143381" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /><category term="Community News" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/Community+News/default.aspx" /></entry><entry><title>CodeSmith 4.0 Released</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/11/08/CodeSmith-4.0-Released.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/11/08/CodeSmith-4.0-Released.aspx</id><published>2006-11-08T19:11:00Z</published><updated>2006-11-08T19:11:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://community.codesmithtools.com/blogs/announcements/archive/2006/11/08/CodeSmith40Released.aspx"&gt;CodeSmith 4.0&lt;/a&gt; has been officially released today at the Dev Connections conference in Las Vegas!&amp;nbsp; This is a huge release for us and has a bunch of great new features as well as countless minor enhancements and bug fixes all based on customer feedback.&lt;/p&gt;&lt;p&gt;Here are some of the features in the new version of CodeSmith:&lt;/p&gt;&lt;li&gt;&lt;strong&gt;CodeSmith Projects&lt;/strong&gt; (.csp) - This feature makes automating your code generation process really easy and consistent whether you are working from inside of Visual Studio 2005, MSBuild, Windows Explorer, a command line / batch file, or CodeSmith itself. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;ActiveSnippets&lt;/strong&gt; - Imagine Visual Studio 2005 snippets, but with the full power of CodeSmith available to execute any logic or access any complex metadata (including database schema and xml data) to control the output of your snippets. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;CodeSmith Maps&lt;/strong&gt; (.csmap) - This feature will allow you to create dictionary style maps of things like SQL to C# data type mappings. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;.netTiers 2.0&lt;/strong&gt; - The .netTiers templates have been greatly enhanced and included with CodeSmith 4.0. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Extended Property Management&lt;/strong&gt; - You can now edit and add new schema extended properties inside of CodeSmith Studio. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Property Persistence&lt;/strong&gt; - CodeSmith now remembers the property values from the last time you executed a template.&lt;/li&gt;&lt;p&gt;You can view the official press release here:&lt;br /&gt;&lt;a href="http://community.codesmithtools.com/blogs/announcements/archive/2006/11/08/CodeSmith40Released.aspx"&gt;http://community.codesmithtools.com/blogs/announcements/archive/2006/11/08/CodeSmith40Released.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=886573" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /><category term="General" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/General/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/Visual+Studio/default.aspx" /><category term="Community News" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/Community+News/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/General+Software+Development/default.aspx" /></entry><entry><title>CodeSmith 4.0 Public Beta Released</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/10/19/CodeSmith-4.0-Public-Beta-Released.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/10/19/CodeSmith-4.0-Public-Beta-Released.aspx</id><published>2006-10-20T00:53:00Z</published><updated>2006-10-20T00:53:00Z</updated><content type="html">&lt;p&gt;CodeSmith 4.0 Beta 2 has been released and is now available to the public.&amp;nbsp; Here are just a few the new capabilities in CodeSmith 4.0: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;CodeSmith Projects&lt;/strong&gt; (.csp) - This feature makes automating your code generation process really easy and consistent whether you are working from inside of Visual Studio 2005, MSBuild, Windows Explorer, a command line / batch file, or CodeSmith itself.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;ActiveSnippets&lt;/strong&gt; - Imagine Visual Studio 2005 snippets, but with the full power of CodeSmith available to execute any logic or access any complex metadata (including database schema and xml data) to control the output of your snippets.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;CodeSmith Maps&lt;/strong&gt; (.csmap) - This feature will allow you to create dictionary style maps of things like SQL to C# data type mappings.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;.netTiers 2.0&lt;/strong&gt; - The .netTiers templates have been greatly enhanced and included with CodeSmith 4.0.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Extended Property Management&lt;/strong&gt; - You can now edit and add new schema extended properties inside of CodeSmith Studio.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Property Persistence&lt;/strong&gt; - CodeSmith now remembers the property values from the last time you executed a template.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;You can read the announcement &lt;a href="http://community.codesmithtools.com/blogs/announcements/archive/2006/10/16/CodeSmith40PublicBetaReleased.aspx"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=690680" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /><category term="Visual Studio" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/Visual+Studio/default.aspx" /><category term="Community News" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/Community+News/default.aspx" /><category term="General Software Development" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/General+Software+Development/default.aspx" /></entry><entry><title>CodeSmith $5,000 cash give away at Dev Connections</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/10/07/CodeSmith-_2400_5_2C00_000-cash-give-away-at-Dev-Connections.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/10/07/CodeSmith-_2400_5_2C00_000-cash-give-away-at-Dev-Connections.aspx</id><published>2006-10-07T21:57:00Z</published><updated>2006-10-07T21:57:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.DevConnections.com/?refer=telligent"&gt;&lt;img style="width: 468px; height: 60px" src="http://www.codesmithtools.com/images/devconnections.gif" border="0" alt="" hspace="10" width="468" height="60" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.codesmithtools.com"&gt;CodeSmith&lt;/a&gt; will have a booth at &lt;a href="http://www.DevConnections.com/?refer=telligent"&gt;Dev Connections&lt;/a&gt; in Las Vegas next month and we thought it would be a lot of fun to give away some gambling money!&amp;nbsp; If you are coming to Dev Connections, just make sure to stop by our booth and signup.&amp;nbsp; If you aren&amp;#39;t coming to Dev Connections, you better sign up quickly!&lt;/p&gt;&lt;p&gt;In addition to Microsoft having some exciting new announcements for Dev Connections, CodeSmith will have some exciting announcements of our own!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=631335" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author></entry><entry><title>CodeSmith Wins "Best Utility" Award</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/05/12/446269.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/05/12/446269.aspx</id><published>2006-05-12T21:39:00Z</published><updated>2006-05-12T21:39:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.aspnetpro.com/"&gt;&lt;img alt="Readers' Choice Awards" hspace="10" src="http://www.codesmithtools.com/images/aspRCA06_Utility_Winner.gif" align="right" border="0" / /&gt;&lt;/a&gt;CodeSmith has won the "Best Utility" award in the asp.netPRO Readers&amp;rsquo; Choice Awards! Thanks to our incredible user base, CodeSmith was able to win this category that included many other great software development products. Thank you to everyone that voted!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=446269" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author></entry><entry><title>HanselMinutes - Code Generation</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/04/19/443386.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/04/19/443386.aspx</id><published>2006-04-19T17:18:00Z</published><updated>2006-04-19T17:18:00Z</updated><content type="html">&lt;p&gt;&lt;span id="ctl00_ContentPlaceHolder1_lblShowDescription" style="LEFT: 57px; TOP: 51px"&gt;&amp;ldquo;Scott talks about CodeSmith as well as other code generators, highlighting their strengths and weaknesses, and offering his usual insight into the issues. Of course, resources abound.&amp;rdquo;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="LEFT: 57px; TOP: 51px"&gt;&lt;a href="http://www.hanselminutes.com/default.aspx?showid=20"&gt;http://www.hanselminutes.com/default.aspx?showid=20&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=443386" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /></entry><entry><title>asp.netPRO Readers’ Choice Awards</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/03/17/440540.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/03/17/440540.aspx</id><published>2006-03-18T03:45:00Z</published><updated>2006-03-18T03:45:00Z</updated><content type="html">&lt;p&gt;If you are a fan of CodeSmith and would like to show your support, please take a moment to &lt;a href="http://www.aspnetpro.com/readerschoice/default.asp"&gt;place your vote&lt;/a&gt; for CodeSmith in the Utility category of the asp.netPRO Readers&amp;rsquo; Choice Awards.&lt;a href="http://www.aspnetpro.com/readerschoice/default.asp"&gt;&lt;img alt="Readers' Choice Awards" hspace="10" src="http://www.ericjsmith.net/images/RCA2006.gif" align="right" vspace="2" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Each year, asp.netPRO recognizes outstanding products and vendors in the ASP.NET add-on market. Please take a moment to select your favorite ASP.NET tools. This is your chance to voice your opinions regarding the tools and products you use in your everyday development efforts.&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=440540" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /><category term="General" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/General/default.aspx" /></entry><entry><title>Build a Data Access Layer in less than 15 minutes</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/02/13/438137.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/02/13/438137.aspx</id><published>2006-02-13T21:25:00Z</published><updated>2006-02-13T21:25:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://community.codesmithtools.com/blogs/tutorials/archive/2006/02/13/nettiers.aspx"&gt;&lt;img alt="" hspace="12" src="http://community.codesmithtools.com/images/CodeSmith-NetTiers/CodeSmithBox.jpg" align="right" border="0" /&gt;&lt;/a&gt;&amp;ldquo;In this article you will learn how to build a Data Access Layer using Microsoft&amp;rsquo;s Enterprise Library in less than 15 minutes using CodeSmith and the .NetTiers Template Library&amp;hellip;&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://community.codesmithtools.com/blogs/tutorials/archive/2006/02/13/nettiers.aspx"&gt;Build a Data Access Layer in less than 15 minutes&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=438137" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /></entry><entry><title>CodeSmith 3.2 Released (.NET 2.0)</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2006/01/30/436893.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2006/01/30/436893.aspx</id><published>2006-01-30T17:30:00Z</published><updated>2006-01-30T17:30:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.codesmithtools.com/"&gt;CodeSmith&lt;/a&gt; 3.2 for .NET 2.0 and Visual Studio 2005 has now been released. This is a free upgrade for all CodeSmith 3.0 users. This version of CodeSmith is nearly identical to CodeSmith 3.1 except it has been optimized and built for .NET 2.0 and Visual Studio 2005 including a new MSBuild CodeSmith task.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.codesmithtools.com/downloadrequest.aspx"&gt;Download CodeSmith 3.2 Now&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.codesmithtools.com/"&gt;Visit the CodeSmith Tools website&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=436893" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /></entry><entry><title>Super XSLT</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2005/10/25/428443.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2005/10/25/428443.aspx</id><published>2005-10-25T22:28:00Z</published><updated>2005-10-25T22:28:00Z</updated><content type="html">Here is a &lt;a href="http://timstall.dotnetdevelopersjournal.com/codesmith_codegeneration_super_xslt.htm"&gt;link to an interesting article&lt;/a&gt; about using CodeSmith as a form of XSLT.&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=428443" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /></entry><entry><title>CodeSmith Tools PDC Booth</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2005/09/08/424707.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2005/09/08/424707.aspx</id><published>2005-09-09T03:25:00Z</published><updated>2005-09-09T03:25:00Z</updated><content type="html">&lt;p&gt;&lt;img height="96" alt="Home_pdc_masthead" hspace="5" src="http://www.ericjsmith.net/images/home_pdc_masthead.gif" width="154" align="left" border="2" /&gt;&lt;a href="http://www.codesmithtools.com/"&gt;CodeSmith Tools&lt;/a&gt; will have a booth at &lt;a href="http://msdn.microsoft.com/events/pdc/"&gt;PDC&lt;/a&gt; this year!&amp;nbsp; Be sure to stop by and say "Hi" next week at &lt;strong&gt;booth #122&lt;/strong&gt;.&amp;nbsp; If you are a current CodeSmith customer, we have CodeSmith t-shirts for you (first come, first serve) and if you aren't a current CodeSmith customer, we will be giving away some CodeSmith Professional licenses ($399 value) for those that stop by and scan their badge.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=424707" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /></entry><entry><title>CodeSmith Tips &amp; Tricks: Template Recursion</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2005/08/23/423505.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2005/08/23/423505.aspx</id><published>2005-08-24T04:23:00Z</published><updated>2005-08-24T04:23:00Z</updated><content type="html">&lt;p&gt;Here is a simple CodeSmith template that shows how templates can be recursively called, have indentation levels and render to a single output:&lt;/p&gt; &lt;p&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;&amp;lt;%&lt;/font&gt;&lt;/span&gt;&lt;font style="BACKGROUND-COLOR: #f5f5f5"&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt;@ CodeTemplate &lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#ff0000"&gt;Language&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;="C#"&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#ff0000"&gt;TargetLanguage&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;="C#"&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#ff0000"&gt;ClassName&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;="RecurseSampleTemplate"&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt;&amp;nbsp; &lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;%&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;&amp;lt;%&lt;/font&gt;&lt;/span&gt;&lt;font style="BACKGROUND-COLOR: #f5f5f5"&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt;@ Property &lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;="InRecurse"&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt; &lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#ff0000"&gt;Type&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;="System.Boolean"&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#800000"&gt; &lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;%&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;font color="#008000"&gt;&lt;span class="C"&gt;//&lt;/span&gt;&lt;span class="C"&gt; Sample header&lt;/span&gt;&lt;/font&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;&amp;lt;%&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt; &lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;if&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt; (&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;.InRecurse) { &lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;%&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;font color="#008000"&gt;&lt;span class="C"&gt;//&lt;/span&gt;&lt;span class="C"&gt; Nested class&lt;/span&gt;&lt;/font&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;&amp;lt;%&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt; } &lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;else&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt; { &lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;%&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;font color="#008000"&gt;&lt;span class="C"&gt;//&lt;/span&gt;&lt;span class="C"&gt; Parent class&lt;/span&gt;&lt;/font&gt;&lt;span class="C"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;&amp;lt;%&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RecurseSampleTemplate recurseSample &lt;/span&gt;&lt;span class="C"&gt;=&lt;/span&gt;&lt;span class="C"&gt; &lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;new&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt; RecurseSampleTemplate();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; recurseSample.InRecurse &lt;/span&gt;&lt;span class="C"&gt;=&lt;/span&gt;&lt;span class="C"&gt; &lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;true&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; recurseSample.Response.IndentLevel &lt;/span&gt;&lt;span class="C"&gt;=&lt;/span&gt;&lt;span class="C"&gt; &lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;.Response.IndentLevel &lt;/span&gt;&lt;span class="C"&gt;+&lt;/span&gt;&lt;span class="C"&gt; &lt;/span&gt;&lt;span class="C"&gt;1&lt;/span&gt;&lt;span class="C"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; recurseSample.Render(&lt;/span&gt;&lt;span class="C"&gt;&lt;font color="#0000ff"&gt;this&lt;/font&gt;&lt;/span&gt;&lt;span class="C"&gt;.Response);&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class="C"&gt;&lt;font style="BACKGROUND-COLOR: #ffff00"&gt;%&amp;gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;Notice how on the CodeTemplate directive we are setting the class name for the template.&amp;nbsp; Then we can create another instance of the template in code, set some properties on the new instance and render it to the current response object.&lt;/p&gt; &lt;p&gt;&lt;span class="C"&gt;Here is what the output of this template looks like:&lt;/span&gt;&lt;/p&gt;&lt;span class="C"&gt;&lt;pre&gt;&lt;!-- Code highlighting produced by Actipro SyntaxEditor http://www.ActiproSoftware.com/Products/DotNet/ --&gt;&lt;span class="C"&gt;&lt;font color="#008000"&gt;//&lt;/font&gt;&lt;/span&gt;&lt;font color="#008000"&gt;&lt;span class="C"&gt; Sample header&lt;br /&gt;&lt;/span&gt;&lt;span class="C"&gt;//&lt;/span&gt;&lt;/font&gt;&lt;font color="#008000"&gt;&lt;span class="C"&gt; Parent class&lt;br /&gt; &lt;/span&gt;&lt;span class="C"&gt;//&lt;/span&gt;&lt;/font&gt;&lt;font color="#008000"&gt;&lt;span class="C"&gt; Sample header&lt;br /&gt; &lt;/span&gt;&lt;span class="C"&gt;//&lt;/span&gt;&lt;/font&gt;&lt;span class="C"&gt;&lt;font color="#008000"&gt; Nested class &lt;/font&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=423505" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /></entry><entry><title>CodeSmith 3.1 Released</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2005/08/11/422256.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2005/08/11/422256.aspx</id><published>2005-08-11T13:49:00Z</published><updated>2005-08-11T13:49:00Z</updated><content type="html">&lt;p&gt;I'm happy to announce the release of version 3.1 of &lt;a href="http://www.codesmithtools.com/"&gt;CodeSmith&lt;/a&gt;, a free upgrade for all users of CodeSmith 3.0. Version 3.1 adds additional capabilities to the highly successful version 3.0 release, including:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Custom designer support for ColumnSchema and ColumnSchemaCollection. &lt;li&gt;A new OnError virtual method for the CodeTemplate class. &lt;li&gt;A new ParseDefaultValue method for IPropertySerializer (used by the ParseDefaultValue method of CodeTemplate). &lt;li&gt;The sample custom properties project now demonstrates property serialization. &lt;li&gt;Default values are parsed for all types that support conversion from string. &lt;li&gt;Numerous other minor bug fixes and user interface enhancements.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Refer to the included history.txt file for a detailed list of all changes and bug fixes since the original 3.0.0 release.&lt;/p&gt; &lt;p&gt;In addition to code and interface improvements, I'm excited to announce the addition of the CodeSmith User's Guide, written by well-known .NET author &lt;a href="http://www.larkware.com/"&gt;Mike Gunderloy&lt;/a&gt;. The new User's Guide includes tutorials, complete documentation of the CodeSmith template syntax, information on the CodeSmith Explorer and CodeSmith Studio clients, advice on integrating CodeSmith into your own processes, and strategies for merging code and using CodeSmith for active code generation. The User's Guide complements the existing API Reference to give CodeSmith a comprehensive help system for users of all skill levels.&amp;nbsp; Mike did an amazing job and if anyone has any technical writing work, I would highly recommend considering Mike for the job.&lt;/p&gt; &lt;p&gt;CodeSmith 3.1 is a completely free upgrade for registered users of version 3.0. Just download and install the latest version from the &lt;a href="http://www.codesmithtools.com/"&gt;http://www.codesmithtools.com&lt;/a&gt; Web site; your existing license information will be preserved. If you're not a registered user, the 30-day free trial offer continues to apply to CodeSmith 3.1.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=422256" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /></entry><entry><title>Announcing a New Larkware Contest</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2005/08/09/422039.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2005/08/09/422039.aspx</id><published>2005-08-09T19:51:00Z</published><updated>2005-08-09T19:51:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.larkware.com/contests/contest2005.html"&gt;It's time for a new contest&lt;/a&gt;, and I'm one of the judges.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;"As you undoubtedly know by now, the release of Microsoft Visual Studio 2005 and Microsoft SQL Server 2005 is scheduled for the week of November 7. That's just three months from now, and the current beta versions are plenty solid enough to build some useful and interesting software. And you all know that I'm a sucker for useful and interesting software. So, here's your chance to build some for me, using the next generation of Microsoft tools! Even better, it's a chance for you to win a batch of nifty &lt;/EM&gt;&lt;A href="http://www.larkware.com/contests/contest2005.html#prizes"&gt;&lt;EM&gt;prizes&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt; in return. So put on your thinking caps, break out the beta software, and get to work. I know there are a lot of talented developers among the Larkware readership, and I expect great things from your collective efforts."&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;"All told, the contest features over $15,000 worth of prizes. I expect that should be enough to motivate some superb contest entries - so what are you waiting for? Get coding!"&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I'd get going if I were you...&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=422039" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term=".NET" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/.NET/default.aspx" /><category term="General" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/General/default.aspx" /></entry><entry><title>XML-based Code Generation with CodeSmith</title><link rel="alternate" type="text/html" href="http://weblogs.asp.net/ericjsmith/archive/2005/08/08/421904.aspx" /><id>http://weblogs.asp.net/ericjsmith/archive/2005/08/08/421904.aspx</id><published>2005-08-08T14:32:00Z</published><updated>2005-08-08T14:32:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.larkware.com/"&gt;Mike Gunderloy&lt;/a&gt; has just posted a new article about &lt;a href="http://developer.com/xml/article.php/10929_3525776_1"&gt;XML-based Code Generation with CodeSmith&lt;/a&gt;&amp;nbsp;over at &lt;a href="http://www.developer.com/"&gt;Developer.com&lt;/a&gt;.&amp;nbsp; Mike does a great job of explaining the new XmlProperty feature in CodeSmith and how powerful it can be in using XML as metadata for your templates.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=421904" width="1" height="1"&gt;</content><author><name>ejsmith</name><uri>http://weblogs.asp.net/members/ejsmith.aspx</uri></author><category term="CodeSmith" scheme="http://weblogs.asp.net/ericjsmith/archive/tags/CodeSmith/default.aspx" /></entry></feed>