2011-02-09 4 views
9

私はsharparchitecture/Northwindをダウンロードしました。私は がうまくいかない足場を働かせようとしています。 がこのクラスライブラリにないことを除いて、私は何も変更していません。私は実行しようと ScaffoldingGeneratorCommand.ttと私は3つのエラーを打つ。変換をコンパイルシャープアーキテクチャー/ノースウィンドの問題のT4

エラー1:変換をコンパイルBaseTemplate.tt

エラー2:クラス、構造体、またはインターフェイス 方法 が持っている必要があります クラス、 構造体、またはインターフェイスメンバー宣言ファイルの「この」無効なトークン戻り値の型のファイル:BaseTemplate.tt

エラー3コンパイル変換:タイプ予想ファイル:BaseTemplate.tt

コンパイラは、彼らがBaseTemplate.ttが、私の最初の行で発生すると言いますしないと 本当の理由だと思います。

誰でもこの問題がありましたか? 私はそれを修正するために何ができるか考えていますか?お時間を

どうもありがとう、 PK

答えて

33

は、私は他のT4テンプレートを使用して、これを受けてきました。問題は、ファイルの末尾にあるスペース(最後の '#>'の後ろ)になります。

VS、CTRL +のENDであなたの.ttファイルを開き、確認して、すべてのスペースが>

string someMethod() 
{ 
    //some code 
    return "someValue"; 
} 
#> 

小道具がChevertonによってポストに行く最後の#の後に除去されています。私は実現 http://social.msdn.microsoft.com/Forums/en-SG/vsx/thread/cd1217c1-39b0-4799-86a2-2449e21a8544

+0

バマー。あなたのt4がxmlを出力し、あなたがintellisenseを望んでいたら? – Adaptabi

+0

私の場合、私はT4MVC.ttとT4MVC.tt.hooks.t4ファイルの両方でこれを行う必要がありました。 – robbpriestley

3

これは古い質問ですが、今私は同じ問題を抱えていましたが、私の場合は行末であることが判明しました。彼らはLFでしたが、CRLFである必要がありました。

.ttファイルを編集してエディタを閉じてもう一度開いたところ、同じファイルにLFとCRLFの両方の行末がありました。その時点でVisual Studioはこれを修正してくれました。 .ttファイルに一貫したCRLF行末が付くと、うまくいきました。

+2

downvoterがdownvoteを説明するのに十分親切であれば、私は私の答えを改善することもできます。 – Dhi

+0

ああ、ありがとう、デイ、私はこのエラーを見つけようとしていたマッドに行っていた...おかしいGitとそれは行末を変更することを主張している! – thinkOfaNumber

+0

[行末の処理方法](https://help.github.com/articles/dealing-with-line-endings/)を設定することができます。私はこれも過去に問題があった。 – Dhi