大きなモデルがある場合は、メタデータを手動で記述する必要はありません。もっと簡単な方法があります。EF をメタデータ デザイン ツールとして使用してください。
DocCode サンプルFoosMetadataProvider
のDocCode.DataAccess.EFを見てください(ダウンロードしてください)。実際にはどのデータベースにも存在しないクラスのメタデータを生成します! EF を使用してデータベースにマップされているかのように、DTO をモデル化できます。Foo
EF をメタデータ デザイン ツールとして使用すると、実際にはデータ アクセスに Entity Framework を使用していないモデルのメタデータをサーバー上で生成するための高速な方法になります。それが...であるふりをして、その後を無視しMetadataDbContext
てください。
運用コードに EF を含める必要もありません。メタデータを生成する目的で、厳密に別のプロジェクトで使用できます。そのメタデータをスクリプトに注ぎます (DocCode にもその例があります)。覚えておいてください... EF は設計時のモデリング ツールとしてのみ使用しています。誰も知る必要はありません。私は言わないことを約束します。
ps: EF はこのモデリング ビジネスが得意です。あなたはそれを悪用していませんし、私はそれがハックだとは思いません。あなたは完全なフレームワークを使用していません...そしてそれは何ですか。jQuery のすべてを使用するわけでもありません。すべてのページでクライアントにサービスを提供することを止めませんでしたよね?