예제 #1
0
        public Account FindMemberByNick(string nick)
        {
            if (String.IsNullOrEmpty(nick))
            {
                throw new ArgumentNullException(nameof(nick));
            }

            return(GroupAccounts.FirstOrDefault(a => a.Account.Nick == nick)?.Account);
        }
예제 #2
0
        private void AddAccount(Account account, GroupAccountType type)
        {
            _ = account ?? throw new ArgumentNullException(nameof(account));

            if (GroupAccounts.All(x => x.Account != account))
            {
                var groupAccount = new GroupAccount(account, this, type);
                GroupAccounts.Add(groupAccount);
                account.GroupAccounts.Add(groupAccount);
            }
        }
예제 #3
0
        public void RemoveAccount(Account account)
        {
            _ = account ?? throw new ArgumentNullException(nameof(account));

            var groupAccount = GroupAccounts.SingleOrDefault(x => x.Account == account && x.Type == GroupAccountType.Member);

            if (groupAccount != null)
            {
                GroupAccounts.Remove(groupAccount);
                account.GroupAccounts.Remove(groupAccount);
            }
        }