c# を使用して asp.net mvc でドメイン駆動設計を開始しており、作成中の小さなサンプル プロジェクトがあります。現在、ドメイン層、サービス層、Web、およびコンソール アプリケーションのプロジェクトがあります。データベースとしてmongodbも使用しています。
現在、私のプロジェクトには、クラスと呼ばれるグループに属する人々のグループがありGroup
、Person
ドメインレイヤーには以下のようなものがあります(簡略化)。Group
また、私のmongodbデータベースでPerson
コレクションがどのように見えるかを表しています。Group
public class Group
{
public string Name { get; set; }
public List<Person> People { get; set; }
}
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
私が理解しているのは私のウェブサイトであり、私のコンソールアプリケーションは、一種のファサードとして機能し、ドメインレイヤーを決して見てはならない私のサービスレイヤーと通信する必要がありますか?
私が確信していないのは、通常、次のようなものを要求すると予想されるすべてのグループについてサービスレイヤーに要求したい場合、コンソールアプリケーションまたは Web サイトにあります。
var groupService = new GroupService();
List<Group> groups = groupService.GetGroups();
この例を除いて、私のグループとしての人物クラスは、私のコンソールアプリとウェブサイトが知らないドメインレイヤーにありGroup
ますGroup
。
私のサービス レイヤーは結果を Json などの別のものとして出力する必要がありますか?それは私の Web サイトやコンソール アプリ次第です。それとも、他の人がアクセスしてこのデータをどう処理するかを判断できる API があるかどうかと言いますか? または、ここで何かが混ざっていますか?
編集:
将来的には、Android アプリで自分のサービスとドメインを使用する予定です。安らぎのサービスを利用しようと考えています。これを公開 API にするつもりはありません (この段階では)。