Esempio n. 1
0
        /// <summary>
        /// Deletes the record
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="input"></param>
        public void DeleteRecord <T>(T input) where T : IStaticType, new()
        {
            var actualType = input.GetType();
            var entityName = actualType.Name;

            var deleting = this.GetById <T>(input.Id); // get the object out before delete

            NancyBlackDatabase.ObjectDeleting(this, entityName, deleting);

            _db.Delete(deleting);

            NancyBlackDatabase.ObjectDeleted(this, entityName, deleting);
        }
Esempio n. 2
0
        /// <summary>
        /// Deletes the specified entity name.
        /// </summary>
        /// <param name="entityName">Name of the entity.</param>
        /// <param name="inputObject">The input object.</param>
        /// <exception cref="System.InvalidOperationException">
        /// Entity:  + entityName +  does not exists
        /// or
        /// Id of inputObject is not set or has default value
        /// </exception>
        public void DeleteRecord(string entityName, dynamic inputObject)
        {
            var type = _dataType.FromName(entityName);
            int?id   = inputObject.Id == null ? null : inputObject.Id;

            if (type == null)
            {
                throw new InvalidOperationException("Entity: " + entityName + " does not exists");
            }
            if (id == null || id == 0)
            {
                throw new InvalidOperationException("Id of inputObject is not set or has default value");
            }

            var deleting = this.GetById(entityName, id.Value); // get the object out before delete

            NancyBlackDatabase.ObjectDeleting(this, entityName, deleting);

            _db.Delete(deleting);

            NancyBlackDatabase.ObjectDeleted(this, entityName, deleting);
        }