Megosztás a következőn keresztül:


Szövegsablonok feldolgozása testreszabott gazdagép használatával

A szövegsablon-átalakítási folyamat bemenetként egy szövegsablonfájlt vesz fel, és kimenetként egy szövegfájlt hoz létre. Meghívhatja a szövegátalakítási motort Egy Visual Studio-bővítményből, vagy egy különálló alkalmazásból, amely egy olyan gépen fut, amelyre a Visual Studio telepítve van. Azonban meg kell adnia egy szöveg sablonkezelő hosztot. Ez az osztály összekapcsolja a sablont a környezettel, megkeresi az erőforrásokat, például szerelvényeket és fájlokat tartalmaz, valamint kezeli a kimenetet és a hibaüzeneteket.

Jótanács

Ha olyan csomagot vagy bővítményt ír, amely a Visual Studióban fog futni, fontolja meg a szövegsablonozási szolgáltatás használatát ahelyett, hogy saját gazdagépet írna. További információ: Szövegátalakítás meghívása VS-bővítményben.

Megjegyzés:

Nem javasoljuk, hogy szövegsablon-átalakításokat használjunk a kiszolgálóalkalmazásokban. Nem javasoljuk a szövegsablon-átalakítások használatát, kivéve egyetlen szálon. Ennek az az oka, hogy a szöveg sablon motor egyetlen AppDomain használatával fordítja le, fordítja és hajtja végre a sablonokat. A lefordított kód nem szálbiztos. A motor úgy van kialakítva, hogy a fájlokat szerial módon dolgozza fel, mivel egy Visual Studio-projektben vannak a tervezéskor.

Futásidejű alkalmazások esetén fontolja meg az előre feldolgozott szövegsablonok használatát: lásd :Run-Time Szöveggenerálás T4 szövegsablonokkal.

Ha az alkalmazás fordításkor rögzített sablonokat használ, egyszerűbb az előre feldolgozott szövegsablonok használata. Ezt a módszert akkor is használhatja, ha az alkalmazás olyan gépen fog futni, amelyen nincs telepítve a Visual Studio. További információ: Run-Time Szöveggenerálás T4-alapú szövegsablonokkal.

Szövegsablon végrehajtása az alkalmazásban

Szöveges sablon végrehajtásához a következő ProcessTemplate metódust Microsoft.VisualStudio.TextTemplating.Enginekell meghívnia:

using Microsoft.VisualStudio.TextTemplating;
...
Engine engine = new Engine();
string output = engine.ProcessTemplate(templateString, host);

Az alkalmazásnak meg kell keresnie és meg kell adnia a sablont, és foglalkoznia kell a kimenettel.

A paraméterben host meg kell adnia egy osztályt, amely implementálja az ITextTemplatingEngineHostot. Ezt a motor hívja vissza.

A gazdagépnek képesnek kell lennie a hibák naplózására, a szerelvényre mutató hivatkozások feloldására és a fájlok belefoglalására, egy olyan alkalmazástartomány megadására, amelyben a sablon végrehajtható, és meg kell hívnia az egyes irányelvek megfelelő processzorát.

Microsoft.VisualStudio.TextTemplating.Engine a Microsoft.VisualStudio.TextTemplating.*.0.dll fájlban van meghatározva, míg az ITextTemplatingEngineHost a Microsoft.VisualStudio.TextTemplating.Interfaces.*.0.dll fájlban található meg.

Ebben a szakaszban

Útmutató: Egyéni szövegsablon-gazdagép létrehozása bemutatja, hogyan hozhat létre egyéni szövegsablon-gazdagépet, amely elérhetővé teszi a szöveges sablon funkcióit a Visual Studión kívül.

Reference

ITextTemplatingEngineHost