SubsonicのActivereCord T4テンプレートは、ActivereCord.csではなくActiverecord1.csを生成するのはなぜですか?
-
22-09-2019 - |
質問
いくつかのプロジェクトで、SubsonicのActiverCord T4テンプレートを使用しました。本日、これらのプロジェクトの1つ(生成された.CSソースファイルなしで)から同じテンプレートを新しいプロジェクトに追加しました。
何らかの理由で、T4テンプレートコードジェネレーターを実行する代わりに:
ActiveRecord.cs
, Context.cs
, StoredProcedures.cs
と Structs.cs
テンプレートジェネレーターが作成します。
ActiveRecord1.cs
, Context1.cs
, StoredProcedures1.cs
と Structs1.cs
代わりは。
ActivereCordフォルダー内のすべての.CSソースファイルを削除しましたが、ソリューション全体にこれらの名前を含む他のファイルはありません。
これは問題ではありませんが、正しいクラス、名前空間などが生成されるため、数字を見るのは面倒です 1
ファイル名の端にタックされます。
亜音速3.0.0.3を使用しています。
なぜこれが起こっているのか誰もが考えていますか?
解決
解決策は、生成された.csファイルを削除し、.projファイルを手動で編集することです。 VS2008のプロジェクトを右クリックして、プロジェクトをアンロードします。
lastgenoutput内のactiverecord1.csの.projファイルで検索し、Activerecord.csに戻ります。他のファイルを繰り返します。どういうわけか、これらの名前は増加します。
<None Include="T4AutoGen\ActiveRecord.tt">
<Generator>TextTemplatingFileGenerator</Generator>
<LastGenOutput>ActiveRecord.cs</LastGenOutput>
</None>
ファイルを保存して、プロジェクトをリロードします。ファイルは今正しく生成されるはずです。
T4テンプレートを使用した奇妙さ以外にこれが起こる理由はわかりません。それはあなたを再び行くはずです。