コード例 #1
0
ファイル: RoleModule.cs プロジェクト: NitrofCG/BodyReport
        /// <summary>
        /// Get data in database
        /// </summary>
        /// <param name="key">Primary Key</param>
        /// <returns>read data</returns>
        public Role Get(RoleKey key)
        {
            if (key == null || string.IsNullOrWhiteSpace(key.Id))
            {
                return(null);
            }

            var row = _dbContext.Roles.Where(m => m.Id == key.Id).FirstOrDefault();

            if (row != null)
            {
                return(RoleTransformer.ToBean(row));
            }
            return(null);
        }
コード例 #2
0
ファイル: RoleModule.cs プロジェクト: NitrofCG/BodyReport
        /// <summary>
        /// Find IdentityRole in database
        /// </summary>
        /// <returns></returns>
        public List <Role> Find(RoleCriteria roleCriteria = null)
        {
            List <Role> resultList            = null;
            IQueryable <IdentityRole> rowList = _dbContext.Roles;

            CriteriaTransformer.CompleteQuery(ref rowList, roleCriteria);

            if (rowList != null)
            {
                foreach (var roleRow in rowList)
                {
                    if (resultList == null)
                    {
                        resultList = new List <Role>();
                    }
                    resultList.Add(RoleTransformer.ToBean(roleRow));
                }
            }
            return(resultList);
        }
コード例 #3
0
ファイル: RoleModule.cs プロジェクト: NitrofCG/BodyReport
        /// <summary>
        /// Update data in database
        /// </summary>
        /// <param name="role">data</param>
        /// <returns>updated data</returns>
        public Role Update(Role role)
        {
            if (role == null || string.IsNullOrWhiteSpace(role.Id))
            {
                return(null);
            }

            var row = _dbContext.Roles.Where(m => m.Id == role.Id).FirstOrDefault();

            if (row == null)
            { // No data in database
                return(Create(role));
            }
            else
            { //Modify Data in database
                RoleTransformer.ToRow(role, row);
                _dbContext.SaveChanges();
                return(RoleTransformer.ToBean(row));
            }
        }
コード例 #4
0
ファイル: RoleModule.cs プロジェクト: NitrofCG/BodyReport
        /// <summary>
        /// Create data in database
        /// </summary>
        /// <param name="role">Data</param>
        /// <returns>insert data</returns>
        public Role Create(Role role)
        {
            if (role == null)
            {
                return(null);
            }

            if (string.IsNullOrWhiteSpace(role.Id))
            {
                int newId;
                var key = new RoleKey();
                var sequencerManager = new SequencerManager();
                do
                {
                    newId  = sequencerManager.GetNextValue(_dbContext, 3, "role");
                    key.Id = newId.ToString();
                }while (Get(key) != null); // Test Record exist

                if (newId > 0)
                {
                    role.Id = newId.ToString();
                }
            }

            if (string.IsNullOrWhiteSpace(role.Id))
            {
                return(null);
            }

            var row = new IdentityRole();

            RoleTransformer.ToRow(role, row);
            _dbContext.Roles.Add(row);
            _dbContext.SaveChanges();
            return(RoleTransformer.ToBean(row));
        }