Aracılığıyla paylaş


Oluşturma işlemi, kod oluşturma

Metin dönüştürme oluşturma işleminin bir parçası olarak harekete geçirmek bir Visual Studio çözüm.Derlenmiş önce şablonlardan oluşturulan dosyaları güncel olduğundan emin olmak için kullanabilirsiniz.Bu sayede, kullanıcı unuttum'ı bir durumu önlemek Dönüştürme tüm şablonları projesini ya da kod içinde denetimi önce.Metin dönüştürme görevler gerçekleştirilen her ikisi için de Visual Studio veya MSBuild ve yapı sunucusu.

Metin dönüştürme görevleri proje dosyalarına ekleme

Ee847423.collapse_all(tr-tr,VS.110).gifGörselleştirme ve modelleme sdk Yükleme

Yapı görevleri geliştirme bilgisayarınızda etkinleştirmek için yükleme Visual Studio görselleştirme ve modelleme sdk.

Yapı görevler oluşturma sunucusunda etkinleştirmek için bkz: Bir yapı sunucudaki metin dönüştürme.

Ee847423.collapse_all(tr-tr,VS.110).gifProje dosyasını düzenleme

Metin dönüştürme harekete geçirmek için projeyi tanımlayan dosya düzenlemek zorunda.Bu özellikler proje özelliklerini Düzenleyicisi'nde düzenlenemez.Bu nedenle, projeyi kapatın ve metin dosyası olarak düzenleyin.

Proje dosyasının metin düzenlemek için

  1. Solution Explorer proje sağ tıklatın ve ardından Unload Project.

  2. Projeyi yeniden sağ tıklatın ve sonra düzenlemeProje.

    Proje dosyasının metin xml Düzenleyicisi'nde görüntülenir.

Düzenlemeyi bitirdiğinizde, projeyi yeniden açmak için

  1. xml Düzenleyicisi'ni kapatın.

  2. Solution Explorer proje sağ tıklatın ve ardından Yeniden proje.

Ee847423.collapse_all(tr-tr,VS.110).gifMetin dönüştürme hedefleri almak

Tek bir dosyada metin dönüştürme yapı görevler tanımlanır.Standart C# veya Visual Basic hedefleri sonra almalısınız.

Metin dönüştürme hedefleri almak için

  1. Bu satırlarından birine benzer bir satır dosyayı arayın:

    <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

    - veya -

    <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />

  2. Bu satırdan sonra metin Templating alma ekleyin:

    <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\TextTemplating\v11.0\Microsoft.TextTemplating.targets" />

Ee847423.collapse_all(tr-tr,VS.110).gifDenetimi nasıl oluşturmak için özellikleri ayarlama gerçekleştirilir

Proje dosyasında aşağıdaki metin ekleyin.Bu özellik grubuna eklenen diğer özellikleri için aşağıdaki bölümlere bakın.

<PropertyGroup>
 <TransformOnBuild>true</TransformOnBuild>
 <!-- Other properties can be inserted here -->
</PropertyGroup>

TransformOnBuildtüm şablonlar, proje oluştururken yürütülecek projede neden olur.

Ee847423.collapse_all(tr-tr,VS.110).gifÇağıran dönüştürme

Ee847423.collapse_all(tr-tr,VS.110).gifProje yapı tüm şablonlarda dönüştürme

Proje dosyasında aşağıdaki özelliği eklerseniz, proje üretilmiştir tabi artımlı oluşturma özelliği her projedeki tüm metni şablonları yürütülür.

<TransformOnBuild>true</TransformOnBuild>

Harekete geçirebilir ya da F5'e basarak dönüştüren Visual Studio, veya kullanarak MSBuild.Örne?in:

msbuild myproject.csproj

Atlarsanız TransformOnBuild ya da yanlış, şablonları için değil dönüştürülmüş proje yapı otomatik bir parçası olarak ayarla.

Ee847423.collapse_all(tr-tr,VS.110).gifBaşvuru yolu ekleme

Ana şablonlar, başvurulan derlemeler için görünür yollar kümesine ekleyebilirsiniz.Örne?in:

<ItemGroup>
    <!-- Add VS\...\PublicAssemblies to the list of places
         to look for assemblies used by templates. -->
    <T4ReferencePath Include="$(VsIdePath)PublicAssemblies\" />
</ItemGroup>

Ee847423.collapse_all(tr-tr,VS.110).gifBelirli şablonları dönüştürme

Belirtilen dosyaları çağırarak dönüştürme Transform ile görev msbuild yardımcı programı.Bu görev, bağımlı değildir TransformOnBuild özelliği ve derleme proje dosyaları.Bir önceki bölümde açıklandığı şekilde metin templating hedefleri dosyasını içe aktarmanız gerekir.

Örneğin, belirli bir dosyayı dönüştürmek için:

msbuild myproj.proj /t:Transform /p:TransformFile=MyTemplate.tt

Joker karakterler de kullanabilirsiniz TransformFile parametresi.Örneğin, bu komut GeneratedCode klasörü altındaki tüm .tt dosyaları dönüştürür:

msbuild dsl.csproj /t:Transform /p:TransformFile="GeneratedCode\**\*.tt"

Ee847423.collapse_all(tr-tr,VS.110).gifArtımlı oluşturma

Varsayılan olarak, Yapı Yöneticisi kendi çıktı dosyası güncel olan bir şablon yürütme önlemek çalışır.Bunu yapmak için hangi dosyaların şablon kodu tarafından okunduğunu görmek için dosya sistemi izler.Sonraki olayda, dosyaları değiştirilme tarihleri çıktı dosyasının tarihle karşılaştırır.Herhangi bir giriş dosyası çıkış dosyası daha son değiştirilmişse şablonu yürütür.Bu şablon önceki çalıştırma hakkında bilgi yok ise şablonu da yürütülür.

Aşağıdaki dosyalardan birinin eski ise, çıkış dosyası oluşturulacak sonucudur:

  • Metin şablon dosyası

  • Belirtilen dosyaları <#@include#> yönergeleri

  • Şablon kodu tarafından okunan dosyalar

  • Dahil veya şablonda kullanılan yönergesini bir işlemci tarafından okunan dosya

Tüm şablonları her yapı yürütülen emin olmak istiyorsanız, bu özellik ekleyin:

<TransformOutOfDateOnly>false</TransformOutOfDateOnly>

Ee847423.collapse_all(tr-tr,VS.110).gifKaynak Denetimi

Kaynak Denetim sistemi ile hiçbir belirli yerleşik tümleştirme vardır.Ancak, örneğin teslim almak ve oluşturulan dosyayı teslim kendi uzantıları ekleyebilirsiniz.

Varsayılan olarak, metin dönüştürme görev okuma yalnızca işaretli bir dosyanın üzerine yazmasını önler ve bu tür bir dosya karşılaşıldığında hata oturum Visual Studio hata listesi ve görev başarısız olur.

Salt okunur dosyaların üzerine olduğunu belirtmek için bu özelliği ekleyin:

<OverwriteReadOnlyOuputFiles>true</OverwriteReadOnlyOuputFiles>

Postprocessing adım özelleştirme sürece uyarı bir dosyanın üzerine hata listesinde günlüğe kaydedilir.

Ee847423.collapse_all(tr-tr,VS.110).gifOluşturma işlemi özelleştirme

Oluşturma işlemi, örneğin üzerine yazılmış dosya teslim özelleştirebilirsiniz.Hangi önce ve sonra dönüştürme adlı iki özelleştirme noktalarını sağlanır.

Bu noktaları tanımlamak için özelliklerini tanımlamak $(BeforeTransform) ve $(AfterTransform).

Örne?in:

<PropertyGroup>
    <BeforeTransform>CustomPreTransform</BeforeTransform>
    <AfterTransform>CustomPostTransform;$(AfterTransform)</AfterTransform>
  </PropertyGroup>
  <Target Name="CustomPreTransform">
    <Message Text="In CustomPreTransform..." Importance="High" />
  </Target>
  <Target Name="CustomPostTransform">
    <Message Text="In CustomPostTransform..." Importance="High" />
  </Target>

De AfterTransform, aşağıdaki listeleri baþvurabilirsiniz:

  • GeneratedFiles - işlem tarafından yazılan dosyaların listesi.Varolan salt okunur dosyaların üzerine yazdığına dosyaları için %(GeneratedFiles.ReadOnlyFileOverwritten) doğru olacaktır.Bu dosya, kaynak denetim dışında denetlenebilir.

  • NonGeneratedFiles - değil üzerine salt okunur dosyaların listesi.

Bu listeleri kullanarak, örneğin, üzerine dosya teslim edebilirsiniz.

Yapı Server metin dönüştürme

Yapı sunucunuz üzerindeki bir bilgisayarda çalışıyorsa Visual Studio olan yüklü değilse, aşağıdaki dosyaları yapı bilgisayar, ağdaki bir bilgisayardan kopyalamanız gerekir Visual Studio SDK yüklenir:

  • \Program Files\Microsoft visual Studio 2010 SDK\VisualStudioIntegration\Common\Assemblies\v4.0\

    • Microsoft.VisualStudio.TextTemplating.11.0.dll

    • Microsoft.VisualStudio.TextTemplating.Interfaces.11.0.dll

    • Microsoft.VisualStudio.TextTemplating.VSHost.11.0.dll

  • \Program Files\MSBuild\Microsoft\VisualStudio\TextTemplating\v11.0\

    • Microsoft.VisualStudio.TextTemplating.SDK.Host.11.0.dll
  • \Program Files\Microsoft visual Studio 11.0\Common7\IDE\PublicAssemblies\

    • Microsoft.VisualStudio.TextTemplating.Modeling.11.0.dll

Daha fazla bilgi için bkz. Yapı Denetleyicisini Dağıtma ve Yapılandırma.

Ayrıca bkz.

Diğer Kaynaklar

Visual Studio görselleştirme ve sdk modelleme