У меня есть gridview, который заполняется выбранным элементом в моем выпадающем списке, у меня нет никаких проблем с этим. Моя проблема в том, что я пытаюсь сохранить несколько строк на моем GridView в мою базу данных, к примеру, я добавил 3 пунктов на моем GridView, который выглядит следующим образом:Сохранение нескольких строк gridview в базе данных
Id | Name
111 | Jack
222 | Nicole
333 | John
Теперь я хочу, чтобы все, что в колонке Id, который 111, 222 и 333 будут сохранены в моей базе данных, как только я нажму кнопку «Сохранить». Я пытаюсь использовать код ниже, но он дает мне сообщение об ошибке «System.data.sqlclient.sqlparameter не содержит определения для« Значений »и не использует метод расширения «Значение» принятие первого аргумента типа ...»:
SqlConnection con = new SqlConnection("Data Source=GATE-PC\\SQLEXPRESS;Initial Catalog=dbProfile;Integrated Security=True");
SqlCommand cmdd = new SqlCommand("Insert into profile (Id, profile_id)VALUES(@id, @profile_id", con);
foreach (GridViewRow row in GridView1.Rows)
{
cmdd.Parameters.Add("@id", SqlDbType.Char, 20, "Id").Values = row.Cells["Id"].Value;
}
cmdd.CommandType = System.Data.CommandType.Text;
cmdd.Parameters.AddWithValue("@profile_id", txtID.Text);
con.Open();
cmdd.ExecuteNonQuery();
Моя таблица должна быть выглядеть в этот раз я смог сохранить несколько строк из моего GridView в мои ДАТЫ abase:
auto_id | Id | profile_id
1 |111 | 101
2 |222 | 101
3 |333 | 101
Что мне не хватает? Я использую asp.net с C#.
Привет спасибо за ответ, я попробовал ваш код, но он дает мне ошибку в row.Cells [ «Id»]. В нем говорится: «Наилучшее перегруженное соответствие метода для« System.Web.UI.WebControls.TableCellCollection.this [int] »имеет некоторые недопустимые аргументы». Еще раз спасибо – user2388316
@ user2388316 ok, поэтому вам нужно передать индекс столбца 'Id' вместо имени« id ». Я обновил свой ответ. Предполагаю, что 'Id' - это первый столбец, поэтому я использовал' Cells [0] '. – Sachin