洋葱建筑问题?

时间:2012-08-06 15:45:51

标签: asp.net-mvc-3 architecture onion-architecture

关于Onion Architecture和MVC,我有几个问题。

1)域名服务和应用服务有什么区别?
2)Service / Repository / UnitOfWork模式如何适应这种架构? 3)您认为这种架构对于MVC应用程序是一个很好的计划吗?

对此的任何想法都将不胜感激。

1 个答案:

答案 0 :(得分:2)

  1. DomainService是您在域中使用的服务。 ApplicationService是您在域中向其他图层公开的服务。

  2. 什么服务?存储库通常定义为域模型中的接口。您的域模型仅适用于该接口。具体的存储库通过依赖注入加载,位于基础结构或持久层中。

  3. 例如

    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。

相关问题