Esempio n. 1
0
 // CRUD
 public void DeleteItem(IModelDefinitionForm form, object item)
 {
     using (var db = GetDbContext(form))
     {
         db.Remove(item);
         db.SaveChanges();
     }
 }
Esempio n. 2
0
 public object UpdateItem(IModelDefinitionForm form, object item)
 {
     using (var db = GetDbContext(form))
     {
         db.Update(item);
         db.SaveChanges();
         return(item);
     }
 }
Esempio n. 3
0
        // read fields
        public IEnumerable <DataField> GetFormFields(IModelDefinitionForm form, Type entity = null)
        {
            var fieldsSet = entity == null?form.GetDetailsFields() : form.GetEntityFields(entity);

            using (var db = GetDbContext(form))
            {
                var pk      = db.FindSinglePrimaryKeyProperty(entity ?? form.GetDetailsType());
                var pkField = fieldsSet.Single(f => f.BindingProperty == pk.Name);
                pkField.PrimaryKey = true;
                pkField.PrimaryKeyGeneratedType = (PrimaryKeyGeneratedTypes)pk.ValueGenerated;
            }

            return(fieldsSet);
        }
Esempio n. 4
0
        public void SetParameters(IModelDefinitionForm form, FormViewOptions viewOptions, Type modelType, IEnumerable <DataField> fields, IList modelItems)
        {
            _form        = form;
            _viewOptions = viewOptions;
            _modelType   = modelType;
            _fields      = fields;
            _modelItems  = modelItems;

            // check if items refreshed
            if (_modelItemsHash != ModelItems.GetHashCode())
            {
                IsEditing             = false;
                _modelItemReserveCopy = null;
                _modelItemsHash       = ModelItems.GetHashCode();
            }
        }
Esempio n. 5
0
        //public IEnumerable<DataField> GetFormFields(Type formType)
        //{
        //    throw new NotImplementedException();
        //}

        //public Tuple<IEnumerable<DataField>, IEnumerable<DataField>> GetMultiFormFields(Type formType)
        //{
        //    throw new NotImplementedException();
        //}

        // read data
        //public IList GetModelData(IModelDefinitionForm form)
        //{
        //    throw new NotImplementedException();
        //}

        public IList GetFilteredModelData(IModelDefinitionForm form, int?filterValue, Type entity = null)
        {
            using (var db = GetDbContext(form))
            {
                var        entityType = entity ?? form.GetDetailsType();
                IQueryable query      = db.FindSet(entityType);

                if (filterValue != null)
                //{
                //    query = query.Where("1 = 2");
                //}
                //else
                {
                    var filterColumn = form.GetDetailsFields().Single(f => f.Filter).BindingProperty;
                    query = query.Where($"{filterColumn} = {filterValue}");
                }

                var result = query.ToDynamicList <object>();
                return(result);
            }
        }