How to save SELECT sql query results in an array in C# Asp.net
asp.net, c#, sql
Solution
Normally i use a class for this:
public class ClassName
{
public string Col1 { get; set; }
public int Col2 { get; set; }
}
Now you can use a loop to fill a list and `ToArray` if you really need an 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<ClassName>();
while (reader.Read())
list.Add(new ClassName { Col1 = reader.GetString(0), Col2 = reader.GetInt32(1) });
allRecords = list.ToArray();
}
}
Note that i've presumed that the first column is a `string` and the second an `integer`. Just to demonstrate that C# is typesafe and how you use the `DataReader.GetXY` methods.
Problem
How can I save the results of an SQL query into an array? I want to use the values (located in col1 and col2) in an IF statement, leading to my thinking of saving them in an array. ``` var con = new SqlConnection("Data Source=local;Initial Catalog=Test;Integrated Security=True"); using (con) using (var command = new SqlCommand("SELECT col1,col2 FROM some table", con)) { con.Open(); command.ExecuteNonQuery(); } ```