Exemple #1
0
        public async Task <HandleResult> Submit(IFormCollection form)
        {
            string columnNum = form["columnNum"];

            if (columnNum.IsEmpty())
            {
                return(HandleResult.Error());
            }

            var columnModel = await _columnService.GetModelByNum(columnNum);

            if (columnModel?.ModelTable == null)
            {
                return(HandleResult.Error());
            }

            var fields = await _columnFieldService.GetByColumnNum(columnNum);

            var columnFields = fields as ColumnField[] ?? fields.ToArray();

            var edit = ContentData.CreateEmptyInstance(columnModel.Column.SiteNum, columnModel.Column.Num);

            foreach (var field in columnFields)
            {
                if (form.ContainsKey(field.Name))
                {
                    edit[field.Name] = form[field.Name];
                }
            }

            var tableSqlHelper = new DynamicTableSqlHelper(columnModel.ModelTable.SqlTableName);

            tableSqlHelper.SetContentData(columnFields, edit);

            return(await _contentService.Add(tableSqlHelper));
        }