Akhirnya menemukan solusinya setelah membaca manual di bawah inihttps://downloads.mysql. com/docs/connector-net-en.pdf
Ada opsi koneksi yang disebut Use Affected Rows, UseAffectedRows
Nilai defaultnya disetel ke false.
Dan deskripsinya berbunyi:
Saat digunakan; Tidak menyetel tanda CLIENT_FOUND_ROWS saat menghubungkan ke server
Sepertinya MySQL Workbench dan MySQL Command Line tidak menggunakan flag CLIENT_FOUND_ROWS selama koneksi, di mana MySql .Net Connector menggunakannya secara default.
Dari INSERT ... ON DUPLICATE KEY UPDATE dokumen di https://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html
Solusi:Tambahkan ini ke string koneksi
Use Affected Rows=true