1

Onion Architectureと MVCについていくつか質問があります。

1) ドメイン サービスとアプリケーション サービスの違いは何ですか?
2) Service/Repository/UnitOfWork パターンはこのアーキテクチャにどのように適合しますか?
3) このアーキテクチャは MVC アプリケーションの良い計画だと思いますか?

これについてのご意見は大歓迎です。

4

2 に答える 2

3
  1. DomainServiceは、ドメイン内で使用するサービスです。ApplicationServiceは、ドメイン内で他のレイヤーに公開するサービスです。

  2. どのようなサービスですか?リポジトリは通常、ドメインモデルのインターフェースとして定義されます。ドメインモデルはインターフェースでのみ機能します。具体的なリポジトリは、依存性注入を介してロードされ、インフラストラクチャまたは永続層にあります。

例えば

public class RegistrationService : IRegistrationService
{
    private IUserRepository mUserRepository;

    public RegistrationService(IUserRepository userRepository)
    {
        mUserRepository = userRepository;
    }

    public void Register(string name, string password)
    {
        var user = new User(name, password);
        mUserRepository.Add(user);
    }
}

(うまくいけば構文は正しい)

この例のRegistrationServiceはDomainServiceです。一方、WCFサービスはApplicationServiceです。

于 2012-08-23T12:37:13.613 に答える