ERP システムにいくつかのサポート アプリケーション (かなり小さい) を作成しています。
したがって、これまで私はデータ アクセス レイヤーを 2 つの役割に使用していると感じていました。ビジネス レイヤーとデータ アクセス レイヤーです。
何を別のレイヤーに移動する必要があるか、また移動する必要があるかどうかを判断するのに苦労しています。いつレイヤーを分離するかを知ることは知恵であり、パターンを知ることは単なる知識であるとどこかで読んだことがあります。どちらも十分な量ではありません。
だから私は何が何であるかを判断するためにいくつかの助けが必要です.
私の現在の DAL は、データの取得と基本的なロジックの適用を扱っています。たとえば、次のようなメソッドがあります
GetProductAvailabilitybyItem
GetProductAvailabilitybyLot
等
それらを分離する必要がある場合、私は何をしなければなりませんか?
私の頭の中にあるもう 1 つの問題は、DAL を正規化し、毎回異なるエンティティを返すようにするために (1 つの一般的な get メソッドを介して) DataTable
、戻り値の型として使用する必要があるということです。現在List<PalletRecord>
、戻り値の型などを使用しています。
私のアプリは非常に小さいため、これら 2 つのレイヤーを区別するのは難しい (そしておそらく役に立たない) と感じています。
私の基本的なニーズは、複数のフロントエンド (Web ページ、WinForms、WPF など) で使用できるものを構築することです。
追加の例:
バーコードについて話しましょう。取得したロット レコードが有効かどうかを確認する必要があります。DAL でレコードを取得し、ビジネス レイヤーで bool を返すメソッドを生成しますか?
次に、テキストボックスに有効なロットが含まれているかどうかを確認するために、どのプレゼンテーションからでも bool メソッドを呼び出すことができますか?
これは非常に単純化されたロジックですか?