Itu karena ExecuteNonQuery
tidak mengembalikan hasil kueri, itu hanya mengeksekusinya di server SQL. Nilai kembalian adalah jumlah baris yang dipengaruhi oleh pernyataan Anda, -1 ketika pernyataan tidak memengaruhi baris apa pun. ExecuteNonQuery
(sesuai namanya) tidak dimaksudkan untuk mengembalikan hasil kueri, melainkan untuk menjalankan pernyataan yang mengubah data (seperti INSERT, DELETE, UPDATE). Dokumen menyatakan:
Anda dapat menggunakan:
count = (int)command.ExecuteScalar();
Untuk mendapatkan jumlah yang Anda cari. Ada juga contoh di dokumen untuk ExecuteScalar
.