それぞれにどのような状況が意味をなすのか、または彼らの意図が何であったのかわかりません
失礼なことを言うつもりはありませんが、MSDN/ASP.NET を調べて調べましたか? 周りにはたくさんの情報があります。そして、これらの各テンプレートには、ここでは説明しきれないほど多くの内容があります。それぞれの MSDN ページがあります。
そうは言っても、ここでつまずいた人はいくつかの情報を持っているので、簡単な要約をします。
ADO.NET エンティティ データ モデル
これは、Entity Framework を ORM として使用するために作成するファイルであり、EF を使用するために必須です。他のものを使用する前に、これが必要です。データベース ファースト (DB から生成)、コード ファースト、モデル ファーストなど、さまざまなアプローチで EDM を作成できます。
サービスベースのデータベース
私はこの用語を聞いたことがありません。私は最近 EF を頻繁に使用している (そして読んでいる) ため、これが EF に関連しているとは思えません。
ADO.NET EntityObject ジェネレーター
EntityObject クラスから継承するエンティティのクラスを生成します。デフォルトの EF コード ジェネレーターと同じですが、出力コードを Model.edmx.designer.cs (既定) ファイルに配置する代わりに、コードが別のファイルに配置されます。個人的には、このテンプレートには何のメリットもありません。
ADO.NET 自己追跡エンティティ ジェネレーター
N 層アプリケーションを開発する場合 (つまり、WCF/Silverlight アプリでモデルを操作できるようにする場合) に、エンティティのクラスを生成します。エンティティは、さまざまなアプリケーションからの永続化操作を処理するために、EF グラフによって「追跡可能」になるように設定されています。
ADO.NET C# POCO エンティティ ジェネレーター
私のお気に入り。:)何も継承しないエンティティのクラスを生成します。彼らは、永続化のために使用されていることを知りません。ドメイン/永続層の永続性無視、テスト容易性、および疎結合が必要な場合は、アプリケーションにこれを使用します。