none
SELECT de registros en un DataGrid en ASP.NET c# RRS feed

  • Pregunta

  • Hola a todos, parte de mi proyecto consiste en mostrar una tabla de visitas a un hospital. Estoy manipulando un DataGrid con una base de datos con los campos: NOMBRE, FECHA, MOTIVO. Lo que quiero hacer es que se limite a mostrar únicamente los registros que correspondan a un sólo nombre (Select * from Visitas where nombre = '" + Acceso.Nombredevisitante + "'")

    ¿Cómo ejecuto esta instrucción en mi proyecto ASP.NET c#? 

    martes, 27 de marzo de 2018 1:56

Respuestas

  • : NOMBRE, FECHA, MOTIVO. Lo que quiero hacer es que se limite a mostrar únicamente los registros que correspondan a un sólo nombre (Select * from Visitas where nombre = '" + Acceso.Nombredevisitante + "'")

    ¿Cómo ejecuto esta instrucción en mi proyecto ASP.NET c#? 

    hola es algo confusa tu pregunta, y como dice web jose falta que indiques que hace parte del problema; lo que se entiende es que no encuentras la forma de realizar la consulta que correspondan a un solo nombre?

    entonces seria con un like asi....

    select NOMBRE, FECHA, MOTIVO from visitas  where nombre like "%'" + Acceso.Nombredevisitante +  "%'"

    y para llamarlo y bindearlo a un grid asp seria algo como esto...

    rotected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            this.BindearTuGrid();
        }
    }
    
    private void BindearTuGrid()
    {
        string strConnString = ConfigurationManager.ConnectionStrings["NombredelineadeTuConexion"].ConnectionString;
        using (SqlConnection con = new SqlConnection(strConnString))
        {
            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.CommandText = "select NOMBRE, FECHA, MOTIVO from visitas  where nombre like "%'" + Acceso.Nombredevisitante +  "%'";
                cmd.Connection = con;
                con.Open();
                TuGridView1.DataSource = cmd.ExecuteReader();
                TuGridView1.DataBind();
                con.Close();
            }
        }
    }

    martes, 27 de marzo de 2018 14:40

Todas las respuestas

  • Imagino que cuando dice "DataGrid" en realidad se refiere a GridView.

    Veo que describe su consulta con SQL así que imagino que su proyecto guarda datos en base de datos.  Mi pregunta entonces es:  ¿Qué parte le da problema?  Aparte de hacer concatenación de SQL, que es muy malo, no tengo pistas acerca de qué parte le da problemas.

    ¿Qué utiliza para acceder a los datos?  ¿EF, NHibernate, algo más?  Por la concatenación de SQL imagino que usa ADO.net directamente.  ¿O me equivoco?


    Jose R. MCP
    Code Samples

    martes, 27 de marzo de 2018 6:44
    Moderador
  • : NOMBRE, FECHA, MOTIVO. Lo que quiero hacer es que se limite a mostrar únicamente los registros que correspondan a un sólo nombre (Select * from Visitas where nombre = '" + Acceso.Nombredevisitante + "'")

    ¿Cómo ejecuto esta instrucción en mi proyecto ASP.NET c#? 

    hola es algo confusa tu pregunta, y como dice web jose falta que indiques que hace parte del problema; lo que se entiende es que no encuentras la forma de realizar la consulta que correspondan a un solo nombre?

    entonces seria con un like asi....

    select NOMBRE, FECHA, MOTIVO from visitas  where nombre like "%'" + Acceso.Nombredevisitante +  "%'"

    y para llamarlo y bindearlo a un grid asp seria algo como esto...

    rotected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            this.BindearTuGrid();
        }
    }
    
    private void BindearTuGrid()
    {
        string strConnString = ConfigurationManager.ConnectionStrings["NombredelineadeTuConexion"].ConnectionString;
        using (SqlConnection con = new SqlConnection(strConnString))
        {
            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.CommandText = "select NOMBRE, FECHA, MOTIVO from visitas  where nombre like "%'" + Acceso.Nombredevisitante +  "%'";
                cmd.Connection = con;
                con.Open();
                TuGridView1.DataSource = cmd.ExecuteReader();
                TuGridView1.DataBind();
                con.Close();
            }
        }
    }

    martes, 27 de marzo de 2018 14:40