У меня есть небольшая проблема в моем коде С# в Asp.net при удалении строки из SQL-сервера. Я использую ExecuteNonQuery, чтобы определить, какое сообщение я передаю на страницу. Если ExecuteNonQuery возвращает 1, я показываю сообщение об успешном завершении. Когда я застреваю, у меня есть та же логика для добавления записи и обновления записи, и мой код отлично работает. Ниже приведен код.
private void Delete_row(string ImageId)
{
string sSQL = "delete FROM dbo.Image_library_UK_temp where Image_id=" + ImageId;
using (SqlConnection dbConnection = new SqlConnection(app_settings.sql_conn_string_db))
{
try
{
//delete the row from db
dbConnection.Open();
SqlCommand command = new SqlCommand(sSQL, dbConnection);
command.CommandType = CommandType.Text;
command.CommandTimeout = 1024;
command.ExecuteNonQuery();
int rowsAffected = command.ExecuteNonQuery();
if (rowsAffected == 1)
{
messagepanel1.ShowSuccessMessage("The image " + txtImgTitle.Text + "has been deleted from the system.");
DisableValidation();
}
}
catch (Exception ex)
{
messagepanel1.ShowErrorMessage("Error: Deletion unsuccessful");
}
Session.RemoveAll();
generateTable(false);
}
}
В настоящее время отраженные строки возвращаются 0. Это простой оператор SQL, поэтому мой sql жестко закодирован на С#, и я не использую хранимую процедуру.
Любые идеи, как я могу сделать эту работу?