W jaki sposób można uzyskać informacje z usuniętych wierszy. Usunąłem niektóre wiersze z tabeli w zestawie danych, a następnie używam metody GetChanges (DataRowState.Deleted), aby uzyskać usunięte wiersze. Próbowałem usuniętych wierszy w oryginalnej tabeli po stronie serwera, ale zakończyło się tymi błędami.sposób pobierania informacji z usuniętego wiersza
System.Data.DeletedRowInaccessibleException: Usunięte informacje o wierszach nie są dostępne za pośrednictwem wiersza.
Co to jest poprawny sposób? Oto mój kod, jakakolwiek rada? Dziękujemy wszystkim
Dataset ds = //get dataset from client side
//get changes
DataTable delRows = ds.Tables[0].GetChanges(DataRowState.Deleted);
//try delete rows in table in DB
if (delRows != null)
{
string connStr = WebConfigurationManager.ConnectionStrings["Employees"].ConnectionString;
conn = new SqlConnection(connStr);
conn.Open();
for (int i = 0; i < delRows.Rows.Count; i++)
{
string cmdText = string.Format("DELETE Tab1 WHERE [email protected]");
cmd = new SqlCommand() { Connection = conn, CommandText = cmdText };
//here is problem, I need get surnames from rows which was deleted
var sqlParam = new SqlParameter(@"Surname", SqlDbType.VarChar) { Value = delRows.Rows[i][1].ToString() };
cmd.Parameters.Add(sqlParam);
cmd.CommandText = cmdText;
cmd.Connection = conn;
cmd.ExecuteNonQuery();
}
}