Here is my code:
public static int getUnidades(List<int> lista)
{
    string conString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    SqlConnection SQLCon = new SqlConnection(conString);
    string SQLCom = "Select UnidadesCliente FROM Cliente WHERE @id = IdCliente";
    SqlCommand cmd = new SqlCommand(SQLCom, SQLCon);
    List<int> listaUnidades = lista;
    int t = 0;
    foreach(int i in lista)
    {
        cmd.Parameters.AddWithValue("@id", Convert.ToString(i));
        SQLCon.Open();
        listaUnidades[t] = Convert.ToInt32(cmd.ExecuteScalar());
        SQLCon.Close();
        t++;
    }
    int total = 0;
    foreach(int i in listaUnidades)
    {
        total = total + i;
    }
    return total;
}
I'm getting an InvalidOperationException in the foreach(int i in lista) loop, saying "collection was modified, enumeration operation may not execute".
Now, I don't believe that I'm modifying the collection, so what's wrong?
 
    