protected void btnSave_Click(object sender, EventArgs e) { phMessageError.Visible = false; phMessageSuccess.Visible = false; lblMessageError.Text = String.Empty; lblMessageSuccess.Text = String.Empty; if (String.IsNullOrWhiteSpace(txtCityName.Text)) { phMessageError.Visible = true; lblMessageError.Text = Resources.Message.city_name_is_mandatory; return; } string mimeType = string.Empty; long cityId = !String.IsNullOrWhiteSpace(hdCityId.Value) ? Convert.ToInt64(Commons.SecurityUtils.descriptografar(hdCityId.Value)) : 0; using (Lib.Repositories.StateCityRepository repository = new Lib.Repositories.StateCityRepository(ActiveUser)) { Lib.Entities.City city = null; if (cityId > 0) { //Carrega o cidade existente city = repository.getCityInstanceById(cityId); } else { //Nova cidade city = new Lib.Entities.City(); } city.Name = txtCityName.Text; city.StateId = ddlState.SelectedValue; repository.saveCity(city); if (repository.HasErrors) { phMessageError.Visible = true; lblMessageError.Text = String.Join(",", repository.Errors); } else { //Adiciona o responsável if (!String.IsNullOrWhiteSpace(ddlResponsable.SelectedValue)) { addResponsable(long.Parse(ddlResponsable.SelectedValue), city.Id); } else { removeResponsable(city.Id); } //Separa os colaboradores adicionados e os removidos updateCollaborators(city.Id); Response.Redirect("~/City/ManageCities.aspx"); } } }