Мне нужно создать код для кнопки удаления - поэтому, если вы выберете некоторые данные в сетке данных, вы можете щелкнуть их и удалить эти данные из базы данных.
Я попытался сделать это путем преобразования данных в свой собственный класс и передачи вФункция «удалить» в моем собственном классе SQL.С преобразованием все в порядке, потому что я могу напечатать этот класс в функции.Но не более того.
Это моя функция удаления:
public void Delete(List<Student> listOfSelected)
{
using (var con = new SqlConnection("Data Source=db-mssql;Initial Catalog=s18185;Integrated Security=True"))
{
con.Open();
var tran = con.BeginTransaction();
using (SqlCommand command = new SqlCommand("Delete from apbd.Student where indexNumber=@Id"))
{
command.Connection = con;
command.Transaction = tran;
try
{
for (int i = 0; i < listOfSelected.Count; i++)
{
MessageBox.Show(""+ listOfSelected.ElementAt(i).index);
command.Parameters.AddWithValue("@Id", listOfSelected.ElementAt(i).index);
}
command.ExecuteNonQuery();
tran.Commit();
}
catch (Exception e)
{
Console.WriteLine(e.StackTrace);
}
}
}
}
Эта функция основана на транзакции, и каждый раз, когда я ее пробовал, я могу удалить только одну строку.Если я попробую больше, это даст исключение.