public async Task <IHttpActionResult> Put([FromODataUri] int PackageTypeID, PackageType item)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (PackageTypeID == item.PackageTypeID)
            {
                return(BadRequest());
            }

            item.ObjectState = ObjectState.Modified;
            _service.Update(item);

            try
            {
                await _unitOfWorkAsync.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ItemExists(PackageTypeID))
                {
                    return(NotFound());
                }
                throw;
            }

            return(Updated(item));
        }