TextTransformin avulla voit luoda koodin automaattisesti T4:llä käynnistämättä Visual Studiota

Sivu päivitetty :
Sivun luontipäivämäärä :

Toimintaympäristö

Visuaalinen studio
  • Visuaalinen studio 2022
Windows
  • Windows 11

Edellytykset

Visuaalinen studio
  • Se toimii jopa hieman vanhemman version kanssa

edellytys

Tässä vihjeessä oletetaan seuraavaa:

  • Windowsiin asennettu Visual Studio

Tässä tapauksessa käytämme työkalua nimeltä "TextTransform (tai TextTransformCore)", mutta koska se on Visual Studioon sisältyvä työkalu, se on asennettava, vaikka et käynnistäisi Visual Studiota.

Mitä eroa on "TextTransform.exe" ja "TextTransformCore.exe" välillä?

"TextTransform.exe" on varhainen työkalu, joka on ollut olemassa entiteettikehyksen tulosta lähtien.

TextTransformCore.exe on uusi työkalu, joka on rakennettu .NET 6: n päälle.

Toiminnallisia eroja ei ole, joten ei ole väliä mitä käytät.

T4-tiedoston (.tt) luominen

Se ei eroa siitä, mitä luot Visual Studiossa, joten luo se tekstieditorilla. Tällä kertaa käytämme koodia, jonka loimme aiemmin Mr./Ms..

<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<#@ output extension=".cs" #>

<#
  List<string> types = new(){"Int", "Short", "Long", "Float", "Double", "Decimal"}; 
#>

public static class ParseExtensions
{
<# foreach (var type in types) { #>
<#   var typeLower = type.ToLower(); #>
  public static <#= typeLower #> Parse<#= type #>(this string self, <#= typeLower #> defaultValue)
  {
    return <#= typeLower #>.TryParse(self, out var val) ? val : defaultValue;
  }
<# } #>
}

Tässä tapauksessa sijoitamme tämän tiedoston seuraavaan sijaintiin. Voit käyttää sitä missä tahansa, joten jätä se minne haluat.

  • C:\Väliaikainen\Sample.tt

Luo koodi komentorivityökalulla "TextTransform"

Visual Studiossa se oli helppoa, koska Visual Studio loi koodin automaattisesti "TextTransformin" avulla, mutta jos et käytä Visual Studiota, sinun on luotava koodi manuaalisesti "TextTransform" -toiminnolla.

TextTransform on komentorivityökalu, joka asennetaan, kun asennat Visual Studion seuraavaan kansioon:

  • < drivePath>\Program Files\Microsoft Visual Studio\<Visual Studio Version>\<Editions>\Common7\IDE\TextTransform.exe
  • < drivepath>\Program Files\Microsoft Visual Studio\<Visual Studio Version>\<Editions>\Common7\IDE\TextTransformCore.exe

[Esimerkki]

  • C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\TextTransform.exe

Käynnistä pääte tai komentokehote ja luo koodi TextTransformin avulla.

Käynnistä Windows 11:ssä pääte Käynnistä-valikosta. Käytä muissa käyttöjärjestelmissä komentokehotetta.

Vaihda terminaalissa komentokehotteeseen. Ei ole mitään, mitä et voi tehdä PowerShellillä, mutta kuvaus muuttuu hieman.

cd Siirry komennossa kansioon, johon sijoitit .tt-tiedoston, ja kirjoita komento seuraavasti: (Muuta kansiopolun versiota tarpeen mukaan.)

[Syöte-esimerkki]

  • "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\TextTransform" Sample.tt

Jos se onnistuu, prosessi etenee ikään kuin se tehtäisiin ilman tapahtumia. Jos todella katsot kansiota, näet, että koodi luodaan automaattisesti.

Sisältö on myös luotu oikein.

Haluan lyhentää TextTransformin polkua komentoa suoritettaessa.

Jos et halua kirjoittaa pitkää polkua TextTransformiin joka kerta, kun suoritat komennon, voit rekisteröidä polun "ympäristömuuttujaan". Jos kyseessä on Visual Studion mukana tuleva kehityskomentokehote, se viittaa oletusarvoisesti kyseiseen polkuun, mikä helpottaa kirjoittamista.

Jos tarkastelet Käynnistä-valikon Visual Studio -kansiota, löydät kehityskomentokehotteen ja käynnistät sen.

Samalla tavalla, kun kirjoitat komentoa, voit jättää TextTransformin polun pois ja suorittaa sen.

Muuten, Windows 11: n tapauksessa se on helppo avata, koska se on sisäänrakennettu päätelaitteeseen.

Lisää komennot .bat- tai .ps1-tiedostoon, jotta ne on helppo suorittaa

Kuvattava sisältö on sama kuin normaalia komentoa syötettäessä, joten sisältö jätetään pois. Käyttöjärjestelmän asetuksista riippuen se voi olla rajoitettu siten, että sitä ei voida suorittaa, vaikka kaksoisnapsautat .bat- tai .ps1-tiedostoa, joten aseta se siinä tapauksessa niin, että se voidaan suorittaa.