CSharp · Console
// C# Extension Method
// Doc: https://csharp-extension.com/en/method/1002781/idatareader-toexpandoobjects
// @nuget: Z.ExtensionMethods
using System;
using System.Data;
using System.Data.Common;
using System.Linq;
using System.Data.SqlClient;
using System.Collections.Generic;
public class Program
{
public static void Main()
{
string sql = "SELECT 1 AS IntColumn, 'FizzBuzz' AS StringColumn UNION SELECT 2, 'BuzzBuzz'";
using (var conn = new SqlConnection(FiddleHelper.GetConnectionStringSqlServer()))
{
conn.Open();
using (DbCommand command = conn.CreateCommand())
{
command.CommandText = sql;
using (IDataReader reader = command.ExecuteReader())
{
//C# Extension Method: IDataReader - ToExpandoObjects
List<dynamic> list = reader.ToExpandoObjects().ToList();
Console.WriteLine(list[0].IntColumn);
Console.WriteLine(list[0].StringColumn);
Console.WriteLine(list[1].IntColumn);
Console.WriteLine(list[1].StringColumn);
}
}
}
}
}