我正在寻找一个解决方案,通过记录试图循环时,我有一个问题,抓住我需要的列,值添加到列表中,然后加该列表为字典值。循环通过记录和添加每一行的解释
这适用于第一条记录,但我尝试清除列表以将下一个8字段插入列表后,它将从Dictionary中清除现有列表值(在已添加之后)。
有没有办法来解决这个问题?
List<string> dbList = new List<string>();
Dictionary<int, List<string>> dbDict = new Dictionary<int, List<string>>();
do
{
dbList.Add("Field1 : " (String)rs.Fields["Field1"].Value);
dbList.Add("Field2 : " rs.Fields["Field 2"].Value);
dbList.Add("Field3 : " (String)rs.Fields["Field3"].Value);
dbDict.add(i,dbList);
i+=1;
rs.MoveNext();
dbList.Clear();
}
while (rs.EOF == false);
'dbList'是参考对象。你只能创建其中的一个,所以同一个被添加(并清除)一个over。创建一个新的列表来存储新值 – Plutonix
尝试'DBLIST =新名单();',而不是'dbList.Clear()' –