Error con parámetros int en c#

Virgilio Pérez Ruiz 26 Reputation points
2022-04-26T14:29:15.073+00:00

Buenos días. Es mi primera vez que uso este servicio.

El problema es el siguiente: la aplicación está estructura en las famosas capas. Presentación - Dominio - Acceso Datos.

Y entra también que uso SQL Server para la base de datos, con procedimientos almacenados que hacen la tarea. Pero hasta ahí no hemos llegado. Tres problemas de compilación me impiden continuar. Y todos en el código del mismo formulario. Y encima entra en juego la PK int identity 1,1 etc.

Código del formulario donde están los errores:

enter code here
private void PicGuardar_Click(object sender, EventArgs e)
{

        try
        {
            LimpiarTextBoxFormulario();
            ObjetoCN.InsertarUsuario(TxtIDUsuario.Text, TxtNombreLogin.Text, TxTContraseña.Text, TxtDNI.Text,
                    TxtNombre.Text, TxtApellidos.Text, TxtDireccion.Text, TxtEdad.Text,
                    TxtCategoria.Text,
                    TxtTelefono.Text, TxtMovil.Text, TxtEmail.Text, TxtContratoFijo.Text, TxtHombreMujer.Text);

            MessageBox.Show("Se insertó correctamente el Usuario", "Insertar", MessageBoxButtons.OK,
                MessageBoxIcon.Exclamation);
            MostrarUsuarios();

        }
        catch (Exception ex)
        {
            MessageBox.Show("no se pudo insertar los datos por: " + ex, "Error", MessageBoxButtons.OK,
                MessageBoxIcon.Error);
        }

    }

El problema aquí es TxTIDUsuario,Text, que aparte del nombrecito, es un int, la PK.
Y TxtCategoría que le pasa lo mismo . Están en un table aparte relacionada y enlazada con la principal. Cosa que funciona muy bien en SQL.

He intentado conversiones de todos los colores y puesto en todos los sitio.

Y el otro error pasa lo mismo:

 //Editar los datos de un usuario
        private void PicEditar_Click(object sender, EventArgs e)
        {

            if (DtgUsuarios.SelectedRows.Count > 0)
            {
                PasarDatos();
                ObjetoCN.EditarUsuario(IDUsuario);
            }
            else
                MessageBox.Show("seleccione una fila por favor.", "Seleccionar");

        }

Es decir, donde participan los int.

El paso a la capa de Dominio y de esta a Acceso a Datos sin errores, claro. Personalmente creo que algo de conversión de datos, que no tenía que convertirlos ya que int son y como int quiero tratarlos. Pero he probado mucho y nada. Siempre ellos. Ah olvidarme de decir que el formulario consta de un DataGroupView al que sólo permito ver. El que tenga permiso pueda actuar conta la base datos, tiene los textbox a los que paso el registro, pero impidiendo cualquier manipulación de la PK.

Small BASIC
Small BASIC
A programming language created by Microsoft that serves a stepping stone for beginners from block-based coding languages to more complex text-based languages.
279 questions
{count} votes

Accepted answer
  1. WhTurner 1,611 Reputation points
    2022-04-26T14:44:42.187+00:00

    La etiqueta "small-basic" es para preguntas técnicas sobre Microsoft Small Basic, el único lenguaje basado en texto e IDE creado para que los estudiantes aprendan a codificar.

    Busque una etiqueta más adecuada ya que su pregunta no se trata de Small Basic

    0 comments No comments

3 additional answers

Sort by: Most helpful
  1. WhTurner 1,611 Reputation points
    2022-04-27T14:24:09.803+00:00

    Tag "dotnet-csharp" (Technical questions about the C# programming language.)

    1 person found this answer helpful.
    0 comments No comments

  2. Virgilio Pérez Ruiz 26 Reputation points
    2022-04-27T07:49:17.28+00:00

    Hola. Y donde hay un etiqueta en consonancia. Miré casi todas, busqué, y ni había ni una con c#, así que ¿como lo hago?

    Saludos, @WhTurner

    0 comments No comments

  3. Main Khalifa 1 Reputation point
    2022-05-15T17:58:30.913+00:00

    You defined eight parameters for your method guardarRegistro but you are trying invoke it with only two ? you either have to refactor your. RecItemCode" obteniendo un error como.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.