У меня есть следующий код с использованием корпоративной библиотеки Microsoft 5:
Database database = DatabaseFactory.CreateDatabase("myConStr");
int rowsAffected = database.ExecuteNonQuery("[DeleteCustomer]", cboCustomers.SelectedItem.ToString());
myConStr правильно определен в app.config (он работает для других запросов на основе EL). SP DeleteCustomer определен как:
CREATE PROCEDURE DeleteCustomer
@CustomerID nchar(5)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
delete from dbo.Customers
where CustomerID = @CustomerID
END
В документации к методу ExecuteNonQuery говорится, что результат возвращает количество затронутых строк.
Однако, я всегда получаю результат «-1», даже если удаление работает нормально. В чем дело? Что я могу сделать, чтобы получить количество удаленных записей?
Спасибо,
Lucian