2017-07-04 18 views
0

****我正型「System.IndexOutOfRangeException」在System.Data.dll中的異常,但在用戶代碼中沒有處理****例外occurence

public List<ItemModel> med() 
      { 
       List<ItemModel> itemList = new List<ItemModel>(); 
       connection(); 
       SqlCommand cmd = new SqlCommand("procmedication_dropdown1", con); 
       cmd.CommandType = CommandType.StoredProcedure; 
       cmd.Parameters.AddWithValue("@PstrOperationFlag", "S-drugname"); 
       con.Open(); 
       SqlDataAdapter sd = new SqlDataAdapter(cmd); 
       DataTable dt = new DataTable(); 
       sd.Fill(dt); 
       ItemModel item = new ItemModel(); 
       using (SqlDataReader sdr = cmd.ExecuteReader()) 
       { 
        ItemModel io = new ItemModel(); 
        while (sdr.Read()) 
        { 
         io = new ItemModel(); 
         io.medication = sdr["medications"].ToString(); 


         itemList.Add(io); 

        } 
       } 
       con.Close(); 
       return itemList; 
      } 
     } 
    } 

回答

1

試試這個

public List<ItemModel> med() 
    { 
     List<ItemModel> itemList = new List<ItemModel>(); 
     ItemModel io; 
     connection(); 
     SqlCommand cmd = new SqlCommand("procmedication_dropdown1", con); 
     cmd.CommandType = CommandType.StoredProcedure; 
     cmd.Parameters.AddWithValue("@PstrOperationFlag", "S-drugname"); 
     con.Open(); 
     using (SqlDataReader sdr = cmd.ExecuteReader()) 
     { 
      while (sdr.Read()) 
      { 
       io = new ItemModel(); 
       io.medication = sdr["medications"].ToString(); 
       itemList.Add(io); 
      } 
     } 
     con.Close(); 
     return itemList; 
    }