私はエンティティフレームワークが初めてです。別のレイヤー/プロジェクト内に EF をデプロイするかどうかを知りたいのですが、このレイヤーに最適なビジュアル スタジオ テンプレートはどれですか。「クラス ライブラリ」または単純な「コンソール アプリケーション」を使用する必要があります。いくつかの既知のテンプレートに加えて、別のレイヤー/プロジェクトとして定義しようとしているものに適したテンプレートを選択するためのルールまたはガイドラインはありますか?
どうもありがとう
私はエンティティフレームワークが初めてです。別のレイヤー/プロジェクト内に EF をデプロイするかどうかを知りたいのですが、このレイヤーに最適なビジュアル スタジオ テンプレートはどれですか。「クラス ライブラリ」または単純な「コンソール アプリケーション」を使用する必要があります。いくつかの既知のテンプレートに加えて、別のレイヤー/プロジェクトとして定義しようとしているものに適したテンプレートを選択するためのルールまたはガイドラインはありますか?
どうもありがとう
あなたが説明するものには、クラステンプレートはありません。
Windowsアプリケーション/コンソールアプリケーション/クラスライブラリは、出力タイプを参照します。コンソールアプリには「Main」メソッドが必要であり、それに基づいてVSはコードを実行可能ファイルにコンパイルすることを認識しています。実行可能ファイルを起動すると、メインが呼び出されます。
一般に、コンソールアプリまたはWindowsアプリタイプの単一のプロジェクトを用意し、それをスタートアッププロジェクトに設定することを検討してください(右クリック>スタートアッププロジェクトとして設定)。コードの大部分をライブラリに入れて、コンソールプロジェクトから呼び出します。
特にEFの場合、データベースに関連するすべてのコードを保持するライブラリ、つまり残りのコードとは別にライブラリを使用する必要があります。
EF のものはクラス ライブラリ プロジェクトに入れる必要があります。これにより、変更なしで Web アプリケーションまたはコンソール/Windows フォーム アプリケーションのいずれかで使用できる DLL が出力されます。
通常、単一の「Runnable」プロジェクトがあり、これがデフォルト プロジェクトになる傾向があります。これは、ASP.Net アプリケーション、コンソール、Windows フォーム、Windows サービスなどです。
このプロジェクトは、アプリケーション ロジックへのエントリ ポイントとして機能します。残りのプロジェクトは DLL であるため、実行可能プロジェクトよりもはるかに再利用可能です。