private async void btnModificar_Click(object sender, RoutedEventArgs e) { if (lstClientes.SelectedItem != null) { if (validarDatos() == true) { btnModificar.IsEnabled = true; btnEliminar.IsEnabled = true; btnAgregar.IsEnabled = false; ClienteAPI clienteSeleccionado = (ClienteAPI)lstClientes.SelectedItem; clienteSeleccionado.Nombre = txtNombre.Text; clienteSeleccionado.Apellido = txtApellido.Text; clienteSeleccionado.CI = txtNroDoc.Text; await ClienteAPI.ModificarCliente(clienteSeleccionado); ObtenerDatos(); Limpiar(); btnModificar.IsEnabled = false; btnEliminar.IsEnabled = false; btnAgregar.IsEnabled = true; } } else { MessageBox.Show("Debe seleccionar primeramente el cliente a modificar "); } }
public static async Task <bool> ModificarCliente(ClienteAPI p) { using (var client = new HttpClient()) { client.BaseAddress = new Uri("https://localhost:44333/"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage respuesta = await client.PutAsJsonAsync("api/ClientesApi/" + p.Id_Cliente, p); return(respuesta.IsSuccessStatusCode); } }
public static async Task <bool> EliminarCliente(ClienteAPI p) { //Muy parecido con el anterior, varia el metodo "DeleteAsync" using (var client = new HttpClient()) { client.BaseAddress = new Uri("https://localhost:44333/"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage respuesta = await client.DeleteAsync("api/ClientesApi/" + p.Id_Cliente); return(respuesta.IsSuccessStatusCode); } }
private void lstClientes_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (lstClientes.SelectedItem != null) { ClienteAPI clienteSeleccionado = (ClienteAPI)lstClientes.SelectedItem; txtId.Text = clienteSeleccionado.Id_Cliente.ToString(); txtNombre.Text = clienteSeleccionado.Nombre; txtApellido.Text = clienteSeleccionado.Apellido; txtNroDoc.Text = clienteSeleccionado.CI; btnEliminar.IsEnabled = true; btnModificar.IsEnabled = true; btnAgregar.IsEnabled = false; } }
public static async Task <bool> AgregarCliente(ClienteAPI p) { //Muy parecido con el anterior, varia el metodo "PostAsJsonAsync", ademas de la URI, se le pasa como pareametro el objeto Persona. using (var client = new HttpClient()) { client.BaseAddress = new Uri("https://localhost:44333/"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage respuesta = await client.PostAsJsonAsync("api/ClientesApi", p); //Aqui va el Endpoint api/Personas, junto con el Objeto Persona (p), ya que el objeto tiene en los valores de sus atributos, los valores para crear un nuevo recurso Persona. return(respuesta.IsSuccessStatusCode); } }
private async void btnAgregar_Click(object sender, RoutedEventArgs e) { if (validarDatos() is true) { ClienteAPI c = new ClienteAPI(); c.Nombre = txtNombre.Text; c.Apellido = txtApellido.Text; c.CI = txtNroDoc.Text; await ClienteAPI.AgregarCliente(c); ObtenerDatos(); Limpiar(); btnEliminar.IsEnabled = false; btnModificar.IsEnabled = false; } }
private async void btnEliminar_Click(object sender, RoutedEventArgs e) { if (lstClientes.SelectedItem != null) { ClienteAPI clienteSeleccionada = (ClienteAPI)lstClientes.SelectedItem; await ClienteAPI.EliminarCliente(clienteSeleccionada); ObtenerDatos(); Limpiar(); btnAgregar.IsEnabled = true; btnEliminar.IsEnabled = false; btnModificar.IsEnabled = false; } else { MessageBox.Show("Debe seleccionar primeramente el cliente a eliminar "); } }
private async void ObtenerDatos() { List <ClienteAPI> lista = await ClienteAPI.ObtenerTodos(); lstClientes.ItemsSource = lista; }