私は MVC アプリケーション開発の初心者です。MVC を使用して新しいプロジェクトを開発したいと思っています。MVC アプリケーションに適したアーキテクチャをたくさん探しました。多くの記事やブログを読んだ後、リポジトリ パターンがこれに使用できることを知りました。
実際のプロジェクトを開始する前の私の理解に基づいて、以下に説明するようなダミーのプロジェクト構造を作成しました [EDMX ファイル、プロジェクトのエンティティ フレームワーク、定義されたカスタム DAL を使用しない]
私のダミーアプリケーションの名前はRepositoryです。ダミーアプリケーションを開発するための例として、国、州、都市の関係を取り上げました。
Repository_DAL_V1 クラス ライブラリこのライブラリには、次のようなクラスがあります。
SQLHelper.cs : このクラスには、ExecutenonQuery などのクエリに対して実行されるメソッドがあります。
Repository_DTO_V1 クラス ライブラリこのライブラリには、次のようなクラスがあります。
CountryDTO.cs : このクラスは、[ CountryDTO:CountryModel ] として CountryModel.cs から継承されます。これは、アプリケーションのすべてのレイヤー間でデータを移動するために使用されます。ビジネスで使用する場合、これはモデルではなく DTO で作成されます。
CountryDTOMapper.cs : これは、データベースのデータを DataTable の形式で DTO オブジェクトのコレクションにマップするために使用されます。
Repository_Implementation web mvc プロジェクトこれは UI レイヤーです。
Repository_IRepositories_V1 クラス ライブラリこのライブラリには、次のようなクラスがあります。
ICountryRepository.cs : これは、SaveCountry() などの関数を宣言したインターフェイスです。
Repository_Models クラス ライブラリこのライブラリには、次のようなクラスがあります。
CountryModel.cs : このクラスには、データベース内のテーブルのすべての列のプロパティがあります。
Repository_Repositories_V1 クラス ライブラリこのライブラリには、次のようなクラスがあります。
CountryRepository.cs : SaveCountry() などの関数が定義されたリポジトリ クラスです。
Repository_ViewModel_V1 クラス ライブラリこのライブラリには、次のようなクラスがあります。
CountryViewModel.cs : これは、画面上のカントリー ビュー用にビルドされます。
上記のプロジェクト参照の詳細:
Repository_DTO_V1 には Repository_Models の参照があります。
Repository_IRepositories_V1 には、Repository_DTO_V1,Repository_Models の参照があります。
Repository_Repositories_V1 には、Repository_IRepositories_V1、Repository_DAL_V1、Repository_DTO_V1、Repository_Models の参照があります。
Repository_ViewModel_V1 には、Repository_Repositories_V1、Repository_IRepositories_V1、Repository_DTO_V1、Repository_Models の参照があります。
私を正しい方向に導くために、皆さんからの導きが必要です。