Services/AccountService/Domain/Specification/UniqueAccountIdSpecification.cs

(完整代码) 857B

using DomainBase;
using Domain.Repository;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Domain.Entities;

namespace Domain.Specification
{
    /// <summary>
    /// 用户ID唯一规约
    /// </summary>
    public class UniqueAccountIdSpecification : ISpecification<Account>
    {
        private readonly IAccountRepository accountRepository;

        public UniqueAccountIdSpecification(IAccountRepository accountRepository)
        {
            this.accountRepository = accountRepository;
        }

        public async Task<bool> IsSatisfiedBy(Account entity)
        {
            if (await accountRepository.FindAccountByAccounId(entity.LoginName) == null)
                return true;
            else
                throw new DomainException("账户必须唯一");
        }
    }
}

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。