N层架构中的服务层和业务层之间有什么区别

时间:2017-02-16 05:34:01

标签: c# model-view-controller architecture

N层次架构中的服务层和业务层之间有什么区别

我正在构建N层应用程序,因此我在N层架构上经历了许多资源,其中包含诸如服务层之类的层 egs https://prodinner.codeplex.com/

上述项目中的服务类

public class UserService : CrudService<User>, IUserService
{
    private readonly IHasher hasher;

    public UserService(IRepo<User> repo, IHasher hasher)
        : base(repo)
    {
        this.hasher = hasher;
        hasher.SaltSize = 10;
    }

    public override int Create(User user)
    {
        user.Password = hasher.Encrypt(user.Password);
        return base.Create(user);
    }

    public bool IsUnique(string login)
    {
        return !repo.Where(o => o.Login == login, true).Any();
    }
}

传统业务层与服务层相同吗?

1 个答案:

答案 0 :(得分:0)

基本区别在于业务层是定义业务逻辑(数据转换)而服务层是从不同客户端访问数据。 在我们的项目中,我们通常具有以下结构:

服务层:

发布服务端点(这可能是您的MVC网页或WCF端点) 进行安全检查 将数据从合同数据传输对象映射到业务对象 调用业务层中的功能

业务层

包含业务逻辑 访问数据层(这可能是您的实体框架数据模型)