Saltar al contenido

Cómo guardar los resultados de la consulta SELECT sql en un array en C# Asp.net

Contamos con tu apoyo para extender nuestros posts con relación a las ciencias de la computación.

Solución:

Normalmente uso una clase para esto:

public class ClassName

    public string Col1  get; set; 
    public int Col2  get; set; 

Ahora puede usar un bucle para llenar una lista y ToArray si realmente necesitas un array:

ClassName[] allRecords = null;
string sql = @"SELECT col1,col2
               FROM  some table";
using (var command = new SqlCommand(sql, con))

    con.Open();
    using (var reader = command.ExecuteReader())
    
        var list = new List();
        while (reader.Read())
            list.Add(new ClassName  Col1 = reader.GetString(0), Col2 = reader.GetInt32(1) );
        allRecords = list.ToArray();
    

Tenga en cuenta que he supuesto que la primera columna es un string y el segundo un integer. Solo para demostrar que C# es seguro para tipos y cómo se usa el DataReader.GetXY métodos.

en lugar de cualquier Array puedes cargar tus datos en DataTable me gusta:

using System.Data;

DataTable dt = new DataTable();
using (var con = new SqlConnection("Data Source=local;Initial Catalog=Test;Integrated Security=True"))

    using (var command = new SqlCommand("SELECT col1,col2" +
    
        con.Open();
        using (SqlDataReader dr = command.ExecuteReader())
        
            dt.Load(dr);
        
    

También puedes usar SqlDataAdapater para llenar su DataTable como

SqlDataAdapter da = new SqlDataAdapter(command);
da.Fill(dt);

Más tarde puede iterar cada fila y comparar como:

foreach (DataRow dr in dt.Rows)

    if (dr.Field("col1") == "yourvalue") //your condition
    
    

Utilice un LECTOR DE DATOS SQL:

En este ejemplo, uso una Lista en lugar de una array.

try

    SqlCommand comm = new SqlCommand("SELECT CategoryID, CategoryName FROM Categories;",connection);
    connection.Open();

    SqlDataReader reader = comm.ExecuteReader();
    List str = new List();
    int i=0;
    while (reader.Read())
    
        str.Add( reader.GetValue(i).ToString() );
        i++;
    
    reader.Close();

catch (Exception)

    throw;

finally

    connection.Close();

Aquí puedes ver las comentarios y valoraciones de los usuarios

Te invitamos a sostener nuestro quehacer poniendo un comentario o valorándolo te estamos agradecidos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *