Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-通用列表-Can';t清除并重新添加所有内容_C#_Sql_List - Fatal编程技术网

C#-通用列表-Can';t清除并重新添加所有内容

C#-通用列表-Can';t清除并重新添加所有内容,c#,sql,list,C#,Sql,List,问题是。。 我有一套名单。。每个都与数据库中的一组流量ID相关 我想为每个循环使用一个列表ID来获取TL ID集,并将它们存储在列表中,但要以类的方式 当我不添加TL_id.Clear()时在开始处。。所有结果被添加,因此最终结果成为=所有交通灯ID的计数 当我在Par.clear()之前清除时 所有结果都是零 有什么帮助吗 List<int> TL_ids = new List<int>(); List<string> TL_Desc = new List&

问题是。。 我有一套名单。。每个都与数据库中的一组流量ID相关

我想为每个循环使用一个列表ID来获取TL ID集,并将它们存储在列表中,但要以类的方式

当我不添加
TL_id.Clear()时在开始处。。所有结果被添加,因此最终结果成为=所有交通灯ID的计数

当我在
Par.clear()之前清除时
所有结果都是零

有什么帮助吗

List<int> TL_ids = new List<int>();
List<string> TL_Desc = new List<string>();

//Array That will Hold Role ID.
ArrayList Par = new ArrayList();
//Get All Traffic Lights info. , but based on Iteration of Lists IDs.
for (int i = 0; i < List_IDs.Count; i++)
{
  Par.Clear();
  Par.Add(new SqlParameter("@List_id", List_IDs[i].ToString()));
  SqlDataReader Dr = GetTLs.ExecSPSelect_dr("GetTLsByListID", Par);

  while (Dr.Read())
  {
    //Fill Intermediate Lists.
    TL_ids.Add(int.Parse(Dr[0].ToString()));
    TL_Desc.Add(Dr[1].ToString());
  }

  ALL_TLsBy_Lists.Add(new Lists(List_IDs[i], TL_ids, TL_Desc));
}
List TL_id=new List();
List TL_Desc=新列表();
//将包含角色ID的数组。
AARYLAMP PAR =新的ARADYLISH();
//获取所有交通灯信息,但是基于列表ID的迭代。
对于(int i=0;i
希望我答对了你的问题

列表是通过引用传递的

在创建
新列表(…)
时,您必须在每次迭代中创建一个新列表

for(int i=0;i
否则,您将得到多个具有相同
TL\u id
TL\u Desc
列表
对象

因此,如果您在上一次迭代中清除了
TL_Desc
,您将在所有
列表
对象中得到一个空列表

for (int i = 0; i < List_IDs.Count; i++)
{
  TL_ids = new List<int>();
  TL_Desc = new List<string>();
  ...
}