2013-02-22 25 views
5

は私がフォルダにテンプレートを追加することができます知っているDropDownListコントロールの追加は、DDL生成テンプレートにカスタムT4テンプレートは

C:\プログラムファイル(x86の)\のMicrosoft Visual Studioの 11.0 \ Common7 \ IDE \拡張\ Microsoft \ Entity Framework Tools \ DBGen

DDL生成テンプレートのドロップダウンリストに表示されるようにする必要がありますが、チームメンバーにテンプレートを配布してテンプレートを同じフォルダに追加する必要があります。

私はあなたがこれを達成する方法を知っていますか私は何とかVS 2012ソリューションにテンプレートを追加することで、同じ結果を達成し、同じDropDownListの

でそれが見えるようにできることを期待していましたか? 私はVS 2012を使用しており、データベースを生成するために使用しています。Model Firstアプローチを使用します。

答えて

1

私は今夜これを試してみると可能ですが、ハックのようです。 edmxファイルを手動で編集し、edmxファイルのデザイナーセクションを編集する必要があるため、バージョン管理されていることを確認する必要があります(自動生成)。まず、t4テンプレートをプロジェクトのルートにコピーします(実際には、必ずしもedmxと同じフォルダになければならないかもしれません)。次に、t4テンプレートをプロジェクトに追加します。カスタムツールエントリ(プロパティ内)を削除して、t4テンプレートを自動作成しないようにします。最終的にはEDMXファイル内の正しい場所(私は右の場所を見つけるためにコンテキストを含む)で、以下のデザイナーのプロパティを追加します。

<!-- EF Designer content (DO NOT EDIT MANUALLY BELOW HERE) --> 
    <edmx:Designer xmlns="http://schemas.microsoft.com/ado/2009/11/edmx"> 
     <edmx:Options> 
     <DesignerInfoPropertySet> 
      <DesignerProperty Name="DDLGenerationTemplate" Value="SSDLToSQLite3.tt" /> 
+0

'Value =" SSDLToSQLite3.tt "/>'はプロジェクトルート相対です。したがって、ルートに置くか、別のパスを設定します。 'Value ="。\ Entities \ SSDLToSQLite3.tt "/>'となります。 Btw、ありがとう、+1 :-) –

0

私はDATETIME2フィールドを生成するためのカスタムテンプレートを作成することになりました。プロパティボックスのドロップダウンにテンプレートを表示することはできませんでしたが、自分の.edmxと同じフォルダにテンプレートを追加し、ソリューションにインクルードしてからテンプレートのファイル名を直接入力することができましたデザイナのプロパティフィールドはデフォルトを置き換えます。値はデータベースとエンティティを生成した後も保持されているように見えますが、edmx XMLを直接編集する必要はなく、カスタムテンプレートは使用されている場所のすぐ下でソース管理されています。

関連する問題