none
Metodos con Entify Framework RRS feed

  • Pregunta

  • Buenos días a todos una consulta tal vez es básica o tal vez me complico solo.

    quiero crear un método para insertar datos a mi BD sql hice un procedimiento y en c# tengo esto

    public partial class tblCargo
        {
            public int Id { get; set; }
            public string Nombre_Cargo { get; set; }
        
            public virtual tblEmpleado tblEmpleado { get; set; }
    
            public static void InsertarCargo(string _cargo)
            {
                using(GourmetEntities gourmetEntities = new GourmetEntities())
                {
                    gourmetEntities.SP_Insertar_Cargo(_cargo);
                }
            }
        }


    y en el boton de mi formulario tengo este código

    private void TsbGuardar_Click(object sender, EventArgs e)
            {
                tblCargo.InsertarCargo(textBoxCargo.Text);
            }


    y la verdad funciona muy bien pero la verdad he visto por ahi que en vez de declarar variables en mi metodo puedo hacerlo de esta manera

    public static void InsertarCargo(tblCargo tblCargo)
            {
                using(GourmetEntities gourmetEntities = new GourmetEntities())
                {
                    gourmetEntities.SP_Insertar_Cargo(................);
                }
            }

    que debería ir dentro de los paréntesis donde pongo los .... puntos y como debería llamar desde el botón.

    por favor si me pueden ayudar con esta duda les agradecería.

    Roberto

    viernes, 21 de febrero de 2020 13:45

Respuestas

  • hola

    >>que debo o como lo debo poner en mi método

    en cual de todos?

    porque tienes el que expone EF y el que tu creas

    si es mas de una propiedad solo debes asignar de la misma forma que lo haces con el NombreCargo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 21 de febrero de 2020 16:20

Todas las respuestas

  • hola

    >>que debería ir dentro de los paréntesis donde pongo los .... puntos

    depende lo que exponga ese metodo que mapea contra el procedure, que te dice el insellisense del Visual studio ?

    si son valores simples imagino seria algo como

           public static void InsertarCargo(tblCargo entity)
            {
                using(GourmetEntities gourmetEntities = new GourmetEntities())
                {
                    gourmetEntities.SP_Insertar_Cargo(entity.cargo);
                }
            }

    no se si ese metodo espera cada valor por separado o lo puede resolver asignando la instancia de la clase que mapea contra la tabla

    Entiendo que tblCargo tiene las propiedes de los campos de la tabla

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 21 de febrero de 2020 14:35
  • Si, esto es lo que hice en esta parte 

    public static void InsertarCargo(tblCargo tblCargo)
            {
                using(GourmetEntities gourmetEntities = new GourmetEntities())
                {
                    gourmetEntities.SP_Insertar_Cargo(tblCargo.Nombre_Cargo);
                }
            }

    ahora en la parte del btn el insellisense del Visual studio me pide estos datos

    en esta parte la verdad ya no se como decirle que los datos son los de la caja de texto o textbox

    por favor con esto mas me puede ayudar

    muchas gracias

    Roberto

    viernes, 21 de febrero de 2020 15:25
  • hola

    Deebs crear la instancia usando

    tblCargo cargo = new tblCargo();
    cargo.Nombre_Cargo = textBoxCargo.Text;
    
    tblCargo.InsertarCargo(cargo);


    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 21 de febrero de 2020 15:30
  • Estimado Leandro gracias.

    una consulta mas, cuando los datos sean mas de uno por ejemplo

    Cargo.NombreCargo

    Cargo.EscalaSalaria 

    que debo o como lo debo poner en mi método, por favor esa seria mi ultima duda de este momento

    muchas gracias

    Roberto

    viernes, 21 de febrero de 2020 15:47
  • hola

    >>que debo o como lo debo poner en mi método

    en cual de todos?

    porque tienes el que expone EF y el que tu creas

    si es mas de una propiedad solo debes asignar de la misma forma que lo haces con el NombreCargo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 21 de febrero de 2020 16:20
  • Que amable muchas gracias.

    Resuelto el problema.

    gracias

    Roberto

    viernes, 21 de febrero de 2020 19:39