SqlDataReader如何填充asp.net中循环读取的数据



这是我下面的代码:

SqlConnection SqlConnections = new SqlConnection();
SqlConnections.ConnectionString = Global.con;
SqlCommand SqlCommands = new SqlCommand("SELECT Id,LinkedUserID From Users");
SqlConnections.Open();
SqlCommands.Connection = SqlConnections;
SqlDataReader SqlDataReaders =   SqlCommands.ExecuteReader(CommandBehavior.CloseConnection);
while (SqlDataReaders.Read())
{
//
}
SqlDataReaders.Close();

我正试图用这段代码运行look来读取用户id和LinkedUserID。我想所有这两个id都根据我的意愿在所有用户上进行删除。请告诉我如何读取这两个id并返回到任何一个id以在数据库中产生影响。我想在任何旧成员的新加入期间,在MLM网络应用程序中使用这一点,这样我就可以很容易地影响其他用户。任何人都有想法。

谢谢

首先需要一个类来保存要获取的数据:

public class LinkData
{
public int Id { get; set; }
public int LinkedUserId { get; set; }
}

然后,当您迭代SqlDataReader时,创建该类的实例并将它们存储在List<LinkData>变量中:

List<LinkData> links = new List<LinkData>();
using (SqlConnection SqlConnections = new SqlConnection(Global.con))
using (SqlCommand SqlCommands = new SqlCommand("SELECT Id,LinkedUserID From Users", SqlConnections))
{
SqlConnections.Open();
using (SqlDataReader SqlDataReaders = SqlCommands.ExecuteReader(CommandBehavior.CloseConnection))
{
while (SqlDataReaders.Read())
{
LinkData newItem = new LinkData();
newItem.Id = SqlDataReaders.GetInt32(0);
newItem.LinkedUserId = SqlDataReaders.GetInt32(1);
links.Add(newItem);
}
SqlDataReaders.Close();
}

最后,Links列表应该包含从数据库中提取的所有数据。

这只是一个绝对的"基本"解决方案——在您的真实代码中,如果数据库中有一个值是NULL,您可能还应该添加一些检查来保护代码不崩溃。

最新更新