Again, I'm late getting this up. I will give usual excuses of being busy. In the future I will not promise anything before the next weekend after the code camp.
Since I developed this talk on this blog, this entry will essentially be a link list. I put a copy of the slides in Google doc and you can reference it here
This presentation is similar, but not the same as a presentation I gave at the Boise Code Camp in February. In the interest of being DRY (Don’t Repeat Yourself) I will reference the notes for that presentation.
Tools
For this presentation, I used the Tangible T4 Editory and the T4 Toolbox.
Template Parts
I presented a slide that showed the basic template parts in a small mock template:
<#@ template language="C#" #> <#@ directive property=“value” #> <# var item = "Statement Block"; #> Text Block <#= "Expression Block" #> <#+ string ClassFeatureBlock(string thingy) { return thingy; } #>
Hello World Monty
I showed some of the elementary features of T4 templates by refactoring a basic template that would create a text file that contained the infamous words “Hello World”. A script of that exercise is here
Basic Code Generation Demonstration
To demonstrate Code Generation I set out to generate a simple T-SQL Select Statement using Sql Management Objects (SMO).
Here I will refer to the Boise Code Camp Notes.
Generating Multiple Files using T4 Toolbox
I used the result of the Basic Code Generation Demonstration to attempt to generate select scripts for all the tables in a given database. This demonstration was based on a series of blog posts by Oleg Synch (Part 1, Part 2, Part 3 & Part 4).
I do intend to give my take on this process. Perhaps that is why I'm over a week late on these notes. I will add a link to these notes later.
GAX Property Directive
I discussed using Guidance Automation Extensions's property directive to overcome T4's lack of native support for passing parameters into templates. This part was based on another Oleg Synch article Understanding T4: <#@ property #> directive.
Again, I will add links to future blogs post(s) on this subject here.
Generating a Nullable ADO.NET DataSet Wrapper
This is when I went to Show and Tell Mode. I demonstrate a Nullable DataSet Wrapper that I wrote in these blog entries. I wrote the templates in VB.NET to generate code in C#.
Part 1, Part 2, Part 3 & Part 4
Last Word
This presentation reached too far and, like Icarus, I failed to hit the mark. The number of forward links is a sign of that. I intend to back-blog in the areas the missing material and add links when I am done.
No comments:
Post a Comment