public async Task <ActionResult <TypeColloqueModel> > Put(TypeColloqueModel model)
        {
            try
            {
                var typeColloque = await _uow.GetRepository <TypeColloque>().GetAsync(model.Id);

                if (typeColloque == null)
                {
                    return(NotFound($"TypeColloque {model.Id} introuvable"));
                }

                if (string.IsNullOrWhiteSpace(model.Nom))
                {
                    return(BadRequest("Le nom de la typeColloque est obligatoire."));
                }

                var updatedTypeColloque = _mapper.Map <TypeColloque>(model);

                _uow.GetRepository <TypeColloque>().Update(updatedTypeColloque);
                await _uow.CommitAsync();

                var url = _linkGenerator.GetPathByAction(HttpContext,
                                                         "Get",
                                                         values: new { id = typeColloque.Id });

                return(Created(url, _mapper.Map <TypeColloqueModel>(updatedTypeColloque)));
            }
            catch (Exception ex)
            {
                _logger.LogError($"Error typeColloque-post-one : {ex.Message}");

                return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }
        }
        public async Task <ActionResult <TypeColloqueModel> > Post(TypeColloqueModel model)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(model.Nom))
                {
                    return(BadRequest("Le nom de la typeColloque est obligatoire."));
                }

                var typeColloque = _mapper.Map <TypeColloque>(model);

                _uow.GetRepository <TypeColloque>().Add(typeColloque);
                await _uow.CommitAsync();

                if (typeColloque.Id != 0)
                {
                    var url = _linkGenerator.GetPathByAction(HttpContext,
                                                             "Get",
                                                             values: new { id = typeColloque.Id });

                    return(Created(url, _mapper.Map <TypeColloqueModel>(typeColloque)));
                }
                else
                {
                    _logger.LogWarning($"Erreur lors de l'ajout de la typeColloque: {typeColloque.Nom}");

                    return(BadRequest("Erreur lors de l'ajout de la typeColloque."));
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"Error typeColloque-post-one : {ex.Message}");

                return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }
        }