У меня есть приложение для учета рабочего времени, в котором пользователи вводят время входа/выхода в разные дни недели. Форма обрабатывает входящие и исходящие данные каждый день, заносит их в качестве параметров в хранимую процедуру и добавляет в базу данных. Как мне сделать это наиболее эффективно? У меня нет доступа к БД, только к хранимым процедурам.
Это голый код, я удалил некоторые ненужные коды.
SqlConnection conn = new SqlConnection(connString);
conn.Open();
SqlCommand cmd = new SqlCommand("insertINOUT", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@UserName", user));
for (int j = 0; j < weekDays.Length; j++)
{
cmd.Parameters.Add(new SqlParameter("@In", in));
cmd.Parameters.Add(new SqlParameter("@Out", out));
cmd.ExecuteReader();
}
conn.Close();
Код работает, если есть только 1 день входа/выхода. Если пользователи заполняют несколько дней, я получаю эту ошибку: Параметр '@In' был указан несколько раз.
Спасибо за вашу помощь.
new
в циклеfor
. Вы пытаетесь сделатьnew
из того, что уже существует. - person Brad   schedule 13.09.2011