public async Task <IActionResult> EditProject(EditProjectViewModel editProjectViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            var projectForUpdate = new ProjectForUpdate()
            {
                Name = editProjectViewModel.Name
            };

            var serializedProjectForUpdate = JsonConvert.SerializeObject(projectForUpdate);

            var httpClient = await this.projectHttpClient.GetClient();

            var response = await httpClient.PutAsync(
                $"api/projects/{editProjectViewModel.Id}",
                new StringContent(serializedProjectForUpdate, Encoding.Unicode, "application/json"))
                           .ConfigureAwait(false);

            if (response.IsSuccessStatusCode)
            {
                return(RedirectToAction("Index"));
            }

            throw new Exception($"A problem happened while calling the API: {response.ReasonPhrase}");
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> UpdateProject(long projectId, [FromBody] ProjectForUpdate projectForUpdate)
        {
            try
            {
                if (projectForUpdate == null)
                {
                    return(BadRequest());
                }

                var projectEntity = await _projectsRepository.GetProjectByIdAsync(projectId);

                if (projectEntity == null)
                {
                    return(NotFound());
                }

                projectEntity.ProjectName = projectForUpdate.ProjectName;
                projectEntity.LatestAssemblyVersionNumber = projectForUpdate.LatestAssemblyVersionNumber;
                projectEntity.AutoUpdaterXMLPath          = projectForUpdate.AutoUpdaterXMLPath;

                //companySettingEntity = _mapper.Map<Entities.CompanySetting>(companySettingDTO);

                if (!(await _projectsRepository.SaveChangesAsync()))
                {
                    return(StatusCode(500, "A problem happened while handling your request."));
                }

                return(NoContent());
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.ToString()));
            }
        }