Blog Null Reference Exception - červen 2013
V předchozích částech této série jsme zatím používali T4 šablonu ke generování jednoho výstupního souboru, což je také výchozí způsob. Při něm je název výstupního souboru odvozen přímo od názvu souboru šablony a má jen jinou příponu, kterou lze určit direktivou <#@ output #>. Někdy se nám ale může hodit generovat jednou T4 šablonou výstupních souborů několik. Dnes upravíme příklad z minula tak, aby se každá generovaná partial třída uložila do samostatného souboru.
V minulé části této série jsme ukázali příklad generování třídy podle “vzorové” třídy, která byla umístěna přímo součástí vlastní T4 šablony. Často by se mám ale mohlo hodit použít jako vzor již existující třídy, které jsou součástí našeho projektu.
V první části této série jsme se seznámili s tím jak vytvořit T4 šablonu, jaká je syntaxe T4 šablon a jaký je princip generování výstupního souboru na základě šablony. Také jsme zmínili, že výstupem šablony může být principiálně libovolný textový soubor (XML, .config soubory), ale my budeme uvažovat, využití T4 šablony pro generování zdrojového kódu. Nyní se blíže podíváme na to, co můžeme využít jako vstup T4 šablony.
T4 (Text Template Transformation Toolkit) je obecný šablonovací systém pro generování textového výstupu, který je navíc přímo integrovaný do Visual Studia (jestli se nemýlím tak již od VS 2008). Přestože lze v případě potřeby transformaci T4 šablony (T4 template) spouštět i kódem v runtime, primárně je T4 využívané pro generovaní výstupu v design-time tj. právě z Visual Studia.