Yasal Uyarı: Burada kullandığım teknolojinin hemen her yerine yeni geliyorum, bu yüzden beni affet, eğer bariz olanı özlüyorum ...Dönüşümü derleme: TypeLite.tt komutunu çalıştırırken tür veya ad alanı adı bulunamadı
MVC 4 ile Entity Framework 5 ve Web API ile karmaşaya başlıyorum ve bazı UI öğeleri yapmak için Knockout ile TypeScript kullanmak istiyorum. EF modelimi alıp benim için TypeScript arayüzleri yaratacak olan TypeLite projesini buldum, böylece her şey "yazıyor".
Çözümümün 3 projeden oluşmaktadır:
- MyApp.dll = MVC tüm işe İçeren
- MyApp.Domain.dll = EF etki modeli içerir
- MyApp.WebAPI.dll = : I (Nuget ile) BenimUygulamam projeye TypeLite referans ilave edildi ve okuma TypeLite.tt modifiye
WebAPI çalışma içerir
<#@ template debug="false" hostspecific="True" language="C#" #>
<#@ assembly name="$(SolutionDir)packages\TypeLite.0.8.2\lib\net40\TypeLite.dll" #>
<#@ assembly name="$(TargetDir)$(TargetFileName)" #>
<#@ import namespace="TypeLite" #>
<#@output extension=".d.ts"#>
<#= TypeScript.Definitions()
.For<MyApp.Domain.Models.Country>()
.For<MyApp.Domain.Models.State>()
.For<MyApp.Domain.Models.Address>()
.For<MyApp.Domain.Models.Contact>() #>
ben "Run Custom Aracı" TypeLite.tt ben hatayı olsun:
<#@ import namespace="MyApp" #>
<#@ import namespace="MyApp.Domain" #>
<#@ import namespace="MyApp.Domain.Models" #>
Hala veren tutar:
Compiling transformation: The type or namespace name 'MyApp' could not be found (are you missing a using directive or an assembly reference?)
çizgiyi (ler) ekleyerek denedim bana yine aynı hata. Eminim ki, önemsiz bir şey eksikliğim var, ve hala Dr. Google'ın benim için arama yaptığını belirttiği binlerce makaleyi seçiyorum ama buradaki birinin ışığı bulmama yardımcı olabileceğini umuyorum. Herhangi bir yardım için
Teşekkür ...
Lukas teşekkür ederiz! Çözmek için modifiye kod benim Sorun: <# @ assembly name = "$ (SolutionDir) MyApp.Domain \ bin \ $ (ConfigurationName) \ MyApp.Domain.dll" #> – ThinkingCap
Bunu T4'e eklemek benim için çalıştı <# @ assembly name = "$ (TargetPath) "#> –