public void crudUsuario(ref Cls_Usuario_DAL Obj_Usuario_DAL, BD Accion) { // Se instancia el Objeto de CatalogosMantenimientosClient (WCF) CatalogosMantenimientosClient Obj_Usuario_Client = new CatalogosMantenimientosClient(); try { // Se abre la conexion al servicio Obj_Usuario_Client.Open(); // Se cargan trae el DataTable y se carga al Obj_Estado_DAL string sMsjError = string.Empty; switch (Accion) { case BD.Actualizar: Obj_Usuario_Client.actualizarUsuario(Obj_Usuario_DAL.SIdUsuario, Obj_Usuario_DAL.SIdPersona, Obj_Usuario_DAL.SContrasena, ref sMsjError); break; case BD.Eliminar: Obj_Usuario_Client.eliminarUsuario(Obj_Usuario_DAL.SIdUsuario, ref sMsjError); break; case BD.Filtrar: Obj_Usuario_DAL.DS.Tables.Add(Obj_Usuario_Client.filtrarUsuario(Obj_Usuario_DAL.SIdUsuario, Obj_Usuario_DAL.SIdPersona, Obj_Usuario_DAL.SContrasena, ref sMsjError)); break; case BD.Insertar: Obj_Usuario_Client.insertarUsuario(Obj_Usuario_DAL.SIdUsuario, Obj_Usuario_DAL.SIdPersona, Obj_Usuario_DAL.SContrasena, ref sMsjError); break; case BD.Listar: Obj_Usuario_DAL.DS.Tables.Add(Obj_Usuario_Client.listarUsuario(ref sMsjError)); break; case BD.FiltrarVista: Obj_Usuario_DAL.DS.Tables.Add(Obj_Usuario_Client.filtrarUsuario(Obj_Usuario_DAL.SIdUsuario, Obj_Usuario_DAL.SIdPersona, Obj_Usuario_DAL.SContrasena, ref sMsjError)); break; default: break; } Obj_Usuario_DAL.sMsjError = sMsjError; } catch (Exception ex) { Obj_Usuario_DAL.sMsjError = ex.Message.ToString(); } finally { if (Obj_Usuario_Client.State == System.ServiceModel.CommunicationState.Opened) { Obj_Usuario_Client.Close(); } } }