コード例 #1
0
 private void Validate(DBEntities context, MetadataEntityAttributeModel model)
 {
     if (model.TypeId == 0)
     {
         string res = MetadataEntityAttributeValidator.CheckColumnName(context,
                                                                       model.EntityId,
                                                                       model.Id,
                                                                       model.ColumnName);
         if (res.Length > 0)
         {
             ModelState.AddModelError("TableName", res);
         }
     }
     else if (model.TypeId == 1)
     {
         string res = MetadataEntityAttributeValidator.CheckColumnName(context,
                                                                       model.EntityId,
                                                                       model.Id,
                                                                       model.ColumnName);
         if (res.Length > 0)
         {
             ModelState.AddModelError("TableName", res);
         }
     }
 }
コード例 #2
0
        public ActionResult EditAttribute(Guid?id, Guid?EntityId, byte?TypeId)
        {
            MetadataEntityAttributeModel model = null;

            if (id.HasValue)
            {
                MetadataEntityAttribute att = MetadataEntityHelper.GetAttribute(id.Value);
                if (att == null)
                {
                    return(MessageHelper.FormedContentObjectNotFound());
                }

                MetadataEntityAttributeModel.CreateMap();
                model = Mapper.Map <MetadataEntityAttribute, MetadataEntityAttributeModel>(att);
                return(View(model));
            }
            else if (EntityId.HasValue)
            {
                MetadataEntity item = MetadataEntityHelper.Get(EntityId.Value);
                if (item != null)
                {
                    if (!TypeId.HasValue)
                    {
                        TypeId = 0;
                    }

                    MetadataEntityAttributeType type =
                        MetadataEntityHelper.CurrentTypeList.FirstOrDefault(c => c.Id == TypeId.Value) ??
                        new MetadataEntityAttributeType
                    {
                        Id   = 255,
                        Name = "Не определена"
                    };
                    return(View(new MetadataEntityAttributeModel
                    {
                        EntityId = item.Id,
                        EntityCaption = item.Caption,
                        TypeId = type.Id,
                        //AttributeTypeName = type.Name
                    }));
                }
                else
                {
                    return(MessageHelper.FormedContentObjectNotFound());
                }
            }
            else
            {
                return(MessageHelper.FormedContentObjectNotFound());
            }
        }
コード例 #3
0
 private void Validate(MetadataEntityAttributeModel model)
 {
     if (model.TypeId == (byte)AttributeType.Value)
     {
         if (string.IsNullOrEmpty(model.Type))
         {
             ModelState.AddModelError("Type", "Требуется поле Тип колонки.");
         }
     }
     else
     {
         if (!model.ReferencedEntityId.HasValue)
         {
             ModelState.AddModelError("ReferencedEntityId", "Требуется поле Объект.");
         }
     }
 }
コード例 #4
0
        public ActionResult EditAttribute(Guid?id, Guid?EntityId, MetadataEntityAttributeModel model, string button)
        {
            if (string.IsNullOrEmpty(button))
            {
                return(View(model));
            }


            Validate(model);

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            using (DBEntities context = Settings.CreateDataContext())
            {
                MetadataEntityAttribute target = null;
                if (model.Id != Guid.Empty)
                {
                    target = MetadataEntityHelper.GetAttribute(model.Id, context);
                    if (target == null)
                    {
                        ModelState.AddModelError("", Resources.Resource.RowNotFound);
                        return(View(model));
                    }
                }
                else
                {
                    target    = new MetadataEntityAttribute();
                    target.Id = model.Id = Guid.NewGuid();
                    context.AddToMetadataEntityAttribute(target);
                }

                MetadataEntityAttributeModel.CreateMap();
                target = Mapper.Map(model, target);
                // UpdateExtention(model, target, context);

                try
                {
                    context.SaveChanges();
                }
                catch (Exception ex)
                {
                    string errorMsg;
                    if (ex.InnerException != null)
                    {
                        errorMsg = string.Format("{0} {1}", ex.Message, ex.InnerException.Message);
                    }
                    else
                    {
                        errorMsg = ex.Message;
                    }

                    ModelState.AddModelError("", Resources.Resource.SaveError + ": " + errorMsg);
                    return(View(model));
                }
            }

            if (button == "SaveAndExit")
            {
                return(RedirectToAction("Edit", new { id = model.EntityId }));
            }
            else
            {
                return(RedirectToAction("EditAttribute", new { id = model.Id }));
            }
        }