Ejemplo n.º 1
0
        protected static void FromDtoSet(FACTS.Framework.DAL.DbContext dbContext, LookupNameDto dto, LookupName entity, Dictionary <FACTS.Framework.Dto.BaseDto, BaseEntity> dtoEntities)
        {
            entity.CreateDateTime = dto.CreateDateTime;
            entity.CreateUserId   = dto.CreateUserId;
            entity.Description    = dto.Description;
            entity.Name           = dto.Name;
            entity.UpdateDateTime = dto.UpdateDateTime;
            entity.UpdateNumber   = dto.UpdateNumber;
            entity.UpdateProcess  = dto.UpdateProcess;
            entity.UpdateUserId   = dto.UpdateUserId;

            if (dto.LookupCodes != null)
            {
                foreach (LookupCodeDto lookupCode in dto.LookupCodes)
                {
                    entity.LookupCodes.Add(DbEntities.LookupCode.FromDto(dbContext, lookupCode, dtoEntities));
                }
            }
            if (dto.LookupProperties != null)
            {
                foreach (LookupPropertyDto lookupProperty in dto.LookupProperties)
                {
                    entity.LookupProperties.Add(DbEntities.LookupProperty.FromDto(dbContext, lookupProperty, dtoEntities));
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>Convert from LookupName entity to DTO</summary>
        /// <param name="dbContext">DB Context to use for setting DTO state</param>
        /// <param name="dto">DTO to use if already created instead of creating new one (can be inherited class instead as opposed to base class)</param>
        /// <param name="entityDtos">Used internally to track which entities have been converted to DTO's already (to avoid re-converting when circularly referenced)</param>
        /// <returns>Resultant LookupName DTO</returns>
        public LookupNameDto ToDtoDeep(FACTS.Framework.DAL.DbContext dbContext, LookupNameDto dto = null, Dictionary <BaseEntity, FACTS.Framework.Dto.BaseDto> entityDtos = null)
        {
            entityDtos = entityDtos ?? new Dictionary <BaseEntity, FACTS.Framework.Dto.BaseDto>();
            if (entityDtos.ContainsKey(this))
            {
                return((LookupNameDto)entityDtos[this]);
            }

            dto = ToDto(dto);
            entityDtos.Add(this, dto);

            System.Data.Entity.Infrastructure.DbEntityEntry <LookupName> entry = dbContext?.Entry(this);
            dto.IsNew     = (entry?.State == EntityState.Added);
            dto.IsDeleted = (entry?.State == EntityState.Deleted);

            if (entry?.Collection(x => x.LookupCodes)?.IsLoaded == true)
            {
                foreach (LookupCode lookupCode in LookupCodes)
                {
                    dto.LookupCodes.Add(lookupCode.ToDtoDeep(dbContext, entityDtos: entityDtos));
                }
            }
            if (entry?.Collection(x => x.LookupProperties)?.IsLoaded == true)
            {
                foreach (LookupProperty lookupProperty in LookupProperties)
                {
                    dto.LookupProperties.Add(lookupProperty.ToDtoDeep(dbContext, entityDtos: entityDtos));
                }
            }

            return(dto);
        }
Ejemplo n.º 3
0
        /// <summary>Convert from LookupName entity to DTO w/o checking entity state or entity navigation</summary>
        /// <param name="dto">DTO to use if already created instead of creating new one (can be inherited class instead as opposed to base class)</param>
        /// <returns>Resultant LookupName DTO</returns>
        public LookupNameDto ToDto(LookupNameDto dto = null)
        {
            dto       = dto ?? new LookupNameDto();
            dto.IsNew = false;

            dto.CreateDateTime = CreateDateTime;
            dto.CreateUserId   = CreateUserId;
            dto.Description    = Description;
            dto.Name           = Name;
            dto.UpdateDateTime = UpdateDateTime;
            dto.UpdateUserId   = UpdateUserId;

            return(dto);
        }
Ejemplo n.º 4
0
        /// <summary>Convert from LookupName DTO to entity</summary>
        /// <param name="dbContext">DB Context to use for attaching entity</param>
        /// <param name="dto">DTO to convert from</param>
        /// <param name="dtoEntities">Used internally to track which dtos have been converted to entites already (to avoid re-converting when circularly referenced)</param>
        /// <returns>Resultant LookupName entity</returns>
        public static LookupName FromDto(FACTS.Framework.DAL.DbContext dbContext, LookupNameDto dto, Dictionary <FACTS.Framework.Dto.BaseDto, BaseEntity> dtoEntities = null)
        {
            dtoEntities = dtoEntities ?? new Dictionary <FACTS.Framework.Dto.BaseDto, BaseEntity>();
            if (dtoEntities.ContainsKey(dto))
            {
                return((LookupName)dtoEntities[dto]);
            }

            LookupName entity = new LookupName();

            dtoEntities.Add(dto, entity);

            entity.CreateDateTime = dto.CreateDateTime;
            entity.CreateUserId   = dto.CreateUserId;
            entity.Description    = dto.Description;
            entity.Name           = dto.Name;
            entity.UpdateDateTime = dto.UpdateDateTime;
            entity.UpdateNumber   = dto.UpdateNumber;
            entity.UpdateProcess  = dto.UpdateProcess;
            entity.UpdateUserId   = dto.UpdateUserId;

            if (dto.LookupCodes != null)
            {
                foreach (LookupCodeDto lookupCode in dto.LookupCodes)
                {
                    entity.LookupCodes.Add(DbEntities.LookupCode.FromDto(dbContext, lookupCode, dtoEntities));
                }
            }
            if (dto.LookupProperties != null)
            {
                foreach (LookupPropertyDto lookupProperty in dto.LookupProperties)
                {
                    entity.LookupProperties.Add(DbEntities.LookupProperty.FromDto(dbContext, lookupProperty, dtoEntities));
                }
            }

            if (dbContext != null)
            {
                dbContext.Entry(entity).State = (dto.IsNew ? EntityState.Added : (dto.IsDeleted ? EntityState.Deleted : EntityState.Modified));
            }

            return(entity);
        }
Ejemplo n.º 5
0
        /// <summary>Convert from LookupName DTO to entity</summary>
        /// <param name="dbContext">DB Context to use for attaching entity</param>
        /// <param name="dto">DTO to convert from</param>
        /// <param name="dtoEntities">Used internally to track which dtos have been converted to entites already (to avoid re-converting when circularly referenced)</param>
        /// <returns>Resultant LookupName entity</returns>
        public static LookupName FromDto(FACTS.Framework.DAL.DbContext dbContext, LookupNameDto dto, Dictionary <FACTS.Framework.Dto.BaseDto, BaseEntity> dtoEntities = null)
        {
            dtoEntities = dtoEntities ?? new Dictionary <FACTS.Framework.Dto.BaseDto, BaseEntity>();
            if (dtoEntities.ContainsKey(dto))
            {
                return((LookupName)dtoEntities[dto]);
            }

            LookupName entity = new LookupName();

            dtoEntities.Add(dto, entity);
            FromDtoSet(dbContext, dto, entity, dtoEntities);

            if (dbContext != null)
            {
                dbContext.Entry(entity).State = (dto.IsNew ? EntityState.Added : (dto.IsDeleted ? EntityState.Deleted : EntityState.Modified));
            }

            return(entity);
        }