-2

ID[KEY]一意の辞書に、対応する を挿入していtime[VALUE]ます。ID列には一意の値しかありませんが、以下のエラーが発生します

「同じキーのアイテムが既に追加されています」

for (int j = 0; j < pro1.Count; j++)
{

  string startend = "Select Id, CStart, CEnd from MBA1 where Channel='" + mbaChannel[allchan] + "' and Product='" + pro[allpro] + "' and ProgDate='" + pro1[j] + "'";
  SqlCommand dat = new SqlCommand(startend, conn);
  SqlDataReader datrdr = dat.ExecuteReader();
  while (datrdr.Read())
  {
      start.Add(datrdr["Id"].ToString(), datrdr.GetDateTime(1));
      end.Add(datrdr["Id"].ToString(), datrdr.GetDateTime(2));

  }
  datrdr.Close();

私のIDコラムには重複がないと確信しています。助けてください!

4

2 に答える 2

1

クエリと辞書の更新がループしています。列に重複する値がない場合Id、クエリは 2 つの異なるクエリで少なくとも 1 行を返します (j例では異なる値)。

于 2013-03-28T13:30:16.587 に答える
1

クエリ pro1.Count 回を実行しています。pro1.Count > 1 の場合、重複した項目を辞書に入れようとします。

于 2013-03-28T13:30:46.617 に答える