public _FieldBase Save(_FieldBase item)
        {
            DynamicParameters @params = new DynamicParameters();

            @params.Add("_id", item.Id, DbType.Int32);
            @params.Add("__field_type_id", item._FieldTypeId, DbType.Int32);
            @params.Add("_name", item.Name, DbType.String);
            @params.Add("_db_name", item.DatabaseName, DbType.String);
            @params.Add("__entity_id", item._EntityId, DbType.Int32);
            @params.Add("_is_identity", item.IsIdentity, DbType.Boolean);

            item.Id = this._dataContext.Connection.ExecuteScalar <int>("_Field$Save", @params, this._dataContext.Transaction, commandType: CommandType.StoredProcedure);
            return(item);
        }
Esempio n. 2
0
 /// <summary>
 /// Сохранить поле.
 /// </summary>
 /// <param name="field">Поле.</param>
 /// <param name="currentUserId">Идентификатор текущего пользователя.</param>
 /// <returns>Поле.</returns>
 public _FieldBase Save(_FieldBase field, int currentUserId)
 {
     {
         Argument.Require(currentUserId != 0, "Текущий пользователь не определен.");
         Argument.Require(field != null, "Поле пустое.");
         Argument.Require(field._EntityId > 0, "Идентификатор сущности пустой.");
         using (var uow = this.CreateAdminUnitOfWork())
         {
             if (field.IsIdentity)
             {
                 List <_Field> entityFields = uow._FieldRepository.Query(entityId: field._EntityId);
                 _Field        identity     = entityFields.FirstOrDefault(f => f.IsIdentity);
                 Argument.Require(identity == null || identity.Id == field.Id,
                                  $"У сущности должно быть единственное поле-идентификатор. " +
                                  $"В сущности \"{identity._EntityName}\" поле-идентификатор \"{identity.Name}\".");
             }
             return(uow._FieldRepository.Save(field));
         }
     }
 }
Esempio n. 3
0
        public _FieldBase Save([FromBody] _FieldBase field)
        {
            int userId = GetCurrentUserId();

            return(FieldService.Save(field, userId));
        }