.NETのpocoジェネレーターが何をするべきかを理解しようとしています。私の意見では、私はedmxファイルからPOCOを作成し、テーブルのフィールドに基づいてクラスを生成するエンティティを選択できるコード生成ツールでなければなりませんが、生成されたpoco名をカスタマイズすることができます私のedmx designer.csファイルで生成されたクラス名から。たとえば、次のように言ってください:Customerという名前のテーブルがedmxファイルにあります。今度はpoco生成ツールを使用して、say、BusinessCustomersというクラスを作成することができます。POCOジェネレーターの理解
しかし、私は生成されたクラス名をカスタマイズすることなくクラスを生成していますが、私はthis exampleからそのようなポコを生成すると、コード生成ツールがまだ所有しているクラスになりがちです。生成されたpocoクラスは、Customersという名前の部分クラスであり、基本的にedmxクラスの拡張です。私はポコスを生成するエンティティを選択的に選択することはできません。したがって、生成されたクラスに変更を加えた場合は、edmxファイルに新しいテーブルを追加し、そのツールを使用して新しいポコを作成したいときはいつでも失われます。もちろん、生成されたクラスを別のプロジェクトにコピーしてそこから使用することもできますが、それが正しいかどうかはわかりません。 上記の例では、生成されたpocoクラスは、テーブルの各フィールドに1つ、仮想プロパティを持つ、Customersという名前の部分クラスです。 edmx designer.csはきれいに拭き取られます。私はまだ自分のコードでツールで生成されたクラスを使用しています。別のpocoクラスが必要な場合、私はまだそれを自分で書く必要があります... pocoジェネレータはedmxクラスをそのままにして新しいクラスセットを作成するはずですか?
最低限私が望むのは、私のためにクラスを生成し、生成すると再びそれに触れることのないツールです。私がADO.NET C#POCOエンティティジェネレータを正しく理解していれば、そのような仕事はしません。そこに優れたツールがありますか、私は自分の要件のために私のポコのクラスをコーディングすることに固執すべきですか?どう思いますか?
申し訳ありません私の質問は少し混乱しています。私は主題の限られた、おそらく間違った理解でこれを書いています。お時間をいただきありがとうございます...
ところでT4テンプレートを編集しようとしているのであれば、これまでにT4テンプレートを編集していないのであれば、このタスクは少し難題かもしれません。インテリセンスやサンプルを書くのに役立つスタイリッシュなプラグインがいくつかありますので、それらを見てください。 – masimplo
生成されたpocoクラスは、Customersという名前の部分クラスで、テーブル内の各フィールドに1つの仮想プロパティがあります。 edmx designer.csはきれいに拭き取られます。私はまだ自分のコードでツールで生成されたクラスを使用しています。別のpocoクラスが必要な場合、私はまだそれを自分で書く必要があります... pocoジェネレータはedmxクラスをそのままにして新しいクラスセットを作成するはずですか? – user20358
いいえ、POCOジェネレータは、edmxファイル内のコードと、可能な別のクラスにコードを分割することになっています。T4を使用してカスタマイズします。2.別のプロジェクトに配置して、実際にEF4クラスではなく自分のクラスを作成し、EFをダンプすることを決定したとしても、それを使用しますあなたがフィットすると思うようなファイル。 – masimplo