/// <summary>
        /// 根据ID组获取信息
        /// </summary>
        /// <param name="id1"></param>
        /// <param name="id2"></param>
        /// <param name="ids"></param>
        /// <returns></returns>
        private async Task <List <WebMenuAuthority> > GetWebMenuAuthoritiesByIDs(Guid id1, Guid id2, params Guid[] ids)
        {
            Expression <Func <WebMenuAuthority, bool> > expression = m => m.ID == id1 || m.ID == id2;

            expression = ids.Aggregate(expression, (current, id) => current.Or(m => m.ID == id));
            List <WebMenuAuthority> webMenuAuthorities = await _webMenuAuthorityRepository.WhereAsync(expression).ToList();

            if (webMenuAuthorities.Count != ids.Length + 2)
            {
                throw new InvalidOperationException("该网页菜单权限不存在");
            }
            return(webMenuAuthorities);
        }
        public async Task ExchangeWebMenuAuthorityIndexAsync(Guid id1, Guid id2)
        {
            List <WebMenuAuthority> webMenuAuthorities = await _webMenuAuthorityRepository.WhereAsync(m => m.ID == id1 || m.ID == id2).ToList();

            if (webMenuAuthorities.Count != 2)
            {
                throw new InvalidOperationException("该网页菜单权限不存在");
            }
            ExchangeIndex(webMenuAuthorities[0], webMenuAuthorities[1]);
            _authorityUnitOfWork.RegisterEdit(webMenuAuthorities[0]);
            _authorityUnitOfWork.RegisterEdit(webMenuAuthorities[1]);
            await _authorityUnitOfWork.CommitAsync();
        }