免責事項:私はここで使用しているテクノロジのすべてに慣れているので、明白です。変換のコンパイル:TypeLite.ttを実行しているときに、タイプまたは名前空間の名前が見つかりませんでした。
MVC 4でEntity Framework 5とWeb APIを使いこなし始めていますが、KnockoutでTypeScriptを使用してUIを使用したいと考えています。 TypeLiteプロジェクトが見つかりました。私のEFモデルをとり、すべてのタイプが「強く」なるようにTypeScriptインターフェイスを生成します。
私のソリューションは、3つのプロジェクトで構成されています
- MyApp.dll = MVCの仕事のすべてが含まれています
- MyApp.Domain.dll =はEFドメインモデルが含まれています
- MyApp.WebAPI.dll = :私は(NuGet経由)MyAppプロジェクトにTypeLite参照を追加し、読み取ることTypeLite.tt修飾
WebAPIの作業が含まれています
<#@ 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>() #>
私はエラーを取得する私は、 "ファイル名を指定して実行カスタムツール" TypeLite.tt上:
Compiling transformation: The type or namespace name 'MyApp' could not be found (are you missing a using directive or an assembly reference?)
私は行(複数可)を追加しようとしている:
<#@ import namespace="MyApp" #>
<#@ import namespace="MyApp.Domain" #>
<#@ import namespace="MyApp.Domain.Models" #>
それはまだ与え続けます私も同じエラー。私は何か些細なものを見逃していると確信しています。私はまだGoogleがこの検索を参照していることがわかっている何千もの記事を選んでいますが、ここにいる誰かが私に光を見いだすのを助けてくれることを願っています。
任意の助けてくれてありがとう...活字体は、世代をインターフェースドライブ
ルーカスありがとう! 私を解決するために変更されたコード問題: <#@アセンブリ名= "$(SolutionDir)MyApp.Domain \ bin \ $(ConfigurationName)\ MyApp.Domain.dll"#> – ThinkingCap
これをT4に追加すると、私のために働いた<#@ assembly name = "$ (TargetPath) "#> –