public async Task <IHttpActionResult> Put([FromUri] int idTowingCompany, [FromBody] TowingCompany towingCompany) { TowingCompany _towingCompany = null; Company _insuranceCompany = null; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } else if (towingCompany == null) { return(BadRequest()); } // Carrega a configuração da Seguradora associada ao Token _insuranceCompany = Util.Helper.GetConfiguration(); // Busca Empresa de Guincho por relacionamento com a Seguradora do Token _towingCompany = await Task.Run(() => _towingCompanyService.ListByInsuranceCompany(_insuranceCompany) .FirstOrDefault(c => c.Id == idTowingCompany)); // Verifica se Empresa de Guincho informada é relacionada com Seguradora do Token if (_towingCompany == null) { return(NotFound()); } // Copiar as propriedades _towingCompany.Copy(towingCompany); // Atualiza dados da Empresa de Guincho _towingCompany = await Task.Run(() => this._towingCompanyService.Update(_towingCompany)); return(Ok(_towingCompany)); }