如何验证多列表
本文关键字:列表 验证 何验证 | 更新日期: 2023-09-27 18:12:38
我有以下代码从数据库中选择记录:
public List<string>[] Select(string Command)
{
string query = Command;
//Create a list to store the result
List<string>[] list = new List<string>[2];
list[0] = new List<string>();
list[1] = new List<string>();
//Open connection
if (this.OpenConnection() == true)
{
//Create Command
MySqlCommand cmd = new MySqlCommand(query, connection);
//Create a data reader and Execute the command
MySqlDataReader dataReader = cmd.ExecuteReader();
//Read the data and store them in the list
while (dataReader.Read())
{
list[0].Add(dataReader["NIK"] + "");
list[1].Add(dataReader["Password"] + "");
}
//close Data Reader
dataReader.Close();
//close Connection
this.CloseConnection();
//return list to be displayed
return list;
}
else
{
return list;
}
}
我的表中有2列,即NIK
和Password
,表中有2行,即1
, 1
和2
, 1
。
我如何验证如果列表包含NIK
= 2和Password
= 1?我怎么知道如果选择语句成功地从我的表中获取记录?如何将多列表打印到文本框中?
您应该考虑使用Dictionary<string, string>
而不是List<string>
s数组。
你可以打印所有的记录:
foreach (var pair in dictionary)
Console.WriteLine(pair.Key + ", " pair.Value);
每个字典对中的第一个字符串是键,第二个字符串是值。
如果列表包含NIK = 2和Password = 1,我如何验证?
浏览列表并检查。例如,使用Enumerable.Any.
我如何知道select语句是否成功地从表中获取记录?
如果没有抛出异常。
如何将多列表打印到文本框中?
从数据库返回的值构造一个字符串(例如使用StringBuilder)并将其赋值给TextBox.Text.
顺便说一句,你应该考虑将读取器和连接封装在using
块中。这样,即使在发生异常的情况下,资源也将被确定性地释放。
另外,考虑使用特定类型的getter从读取器读取数据(如GetString、GetInt32等)。