ADO.NET是微软提供的用于访问数据库的一组技术和类库。它提供了一种灵活的方式来连接和操作各种类型的数据库,包括关系型数据库(如SQL Server、MySQL、Oracle等)和非关系型数据库(如MongoDB、Redis等)。
动态遍历SqlDataReader列,并将这些值分配给C#对象是一种常见的需求,可以通过以下步骤实现:
下面是一个示例代码:
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
public class Program
{
public static void Main()
{
string connectionString = "your_connection_string";
string query = "SELECT Id, Name, Age FROM Persons";
List<Person> persons = new List<Person>();
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(query, connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Person person = new Person();
person.Id = reader.GetInt32(0);
person.Name = reader.GetString(1);
person.Age = reader.GetInt32(2);
persons.Add(person);
}
reader.Close();
}
foreach (Person person in persons)
{
Console.WriteLine($"Id: {person.Id}, Name: {person.Name}, Age: {person.Age}");
}
}
}
在上述示例中,我们使用ADO.NET连接到数据库,执行了一个查询语句,并将查询结果的每一行数据分配给了一个Person对象。最后,我们将每个Person对象打印出来。
推荐的腾讯云相关产品:腾讯云数据库(TencentDB),提供了多种数据库类型的托管服务,包括关系型数据库(如MySQL、SQL Server等)和非关系型数据库(如MongoDB、Redis等)。您可以根据具体需求选择适合的数据库产品。更多信息请参考腾讯云数据库产品介绍:https://cloud.tencent.com/product/cdb
领取专属 10元无门槛券
手把手带您无忧上云