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.