我有一個時間表應用程序,用戶可以在一週中的不同日子內輸入他們的時間。表單處理每天的輸入/輸出,將它們作爲參數存入存儲過程並將它們添加到數據庫中。我將如何最有效地完成這項工作?我無法訪問數據庫,只能訪問存儲過程。如何在C#中多次執行存儲過程
這是背後的裸露代碼,我剝去了一些不必要的代碼。
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'。
感謝您的幫助。
這是因爲在'for'循環那些'new'語句的所有。你正試圖對已經存在的東西進行「新」處理。 – Brad