Exemplo n.º 1
0
        /// <summary>
        /// From model instance
        /// </summary>
        public override object FromModelInstance(Core.Model.Entities.EntityNameComponent modelInstance, DataContext context)
        {
            var retVal = base.FromModelInstance(modelInstance, context) as DbEntityNameComponent;

            // Duplicate name?
            var existing = context.FirstOrDefault <DbPhoneticValue>(o => o.Value == modelInstance.Value);

            if (existing != null && existing.SequenceId != retVal.ValueSequenceId)
            {
                retVal.ValueSequenceId = existing.SequenceId.Value;
            }
            else if (existing == null)
            {
                var value = context.Insert(new DbPhoneticValue()
                {
                    Value = modelInstance.Value
                });
                retVal.ValueSequenceId = value.SequenceId.Value;
            }
            else
            {
                System.Diagnostics.Debugger.Break();
            }

            return(retVal);
        }
        /// <summary>
        /// From model instance
        /// </summary>
        public override object FromModelInstance(Core.Model.Entities.EntityNameComponent modelInstance, DataContext context)
        {
            var retVal = base.FromModelInstance(modelInstance, context) as DbEntityNameComponent;

            // Duplicate name?
            var existing = context.FirstOrDefault <DbPhoneticValue>(o => o.Value == modelInstance.Value);

            if (existing != null && existing.SequenceId != retVal.ValueSequenceId)
            {
                retVal.ValueSequenceId = existing.SequenceId.Value;
            }
            else if (existing == null)
            {
                var phoneticCoder = ApplicationServiceContext.Current.GetService <IPhoneticAlgorithmHandler>();
                var value         = context.Insert(new DbPhoneticValue()
                {
                    Value = modelInstance.Value,
                    PhoneticAlgorithmKey = phoneticCoder?.AlgorithmId ?? PhoneticAlgorithmKeys.None,
                    PhoneticCode         = phoneticCoder?.GenerateCode(modelInstance.Value)
                });
                retVal.ValueSequenceId = value.SequenceId.Value;
            }
            else
            {
                System.Diagnostics.Debugger.Break();
            }

            return(retVal);
        }
        /// <summary>
        /// Update
        /// </summary>
        public override Core.Model.Entities.EntityNameComponent UpdateInternal(DataContext context, Core.Model.Entities.EntityNameComponent data)
        {
            if (data.ComponentType != null)
            {
                data.ComponentType = data.ComponentType?.EnsureExists(context) as Concept;
            }

            data.ComponentTypeKey = data.ComponentType?.Key ?? data.ComponentTypeKey;
            return(base.UpdateInternal(context, data));
        }
Exemplo n.º 4
0
 /// <summary>
 /// Insert context
 /// </summary>
 public override Core.Model.Entities.EntityNameComponent InsertInternal(DataContext context, Core.Model.Entities.EntityNameComponent data, IPrincipal principal)
 {
     if (data.ComponentType != null)
     {
         data.ComponentType = data.ComponentType?.EnsureExists(context, principal) as Concept;
     }
     data.ComponentTypeKey = data.ComponentType?.Key ?? data.ComponentTypeKey;
     return(base.InsertInternal(context, data, principal));
 }