Cita: ExecuteScalar devuelve un Integer indicando el número de filas que se ha visto afectada por la sentencia,

Que tal Sundark..

, solo quería aclarar una cosa, el ExecuteScalar de hecho se aplica para las funciones agregadas de SQL por ejemplo, AVG, SUM, MAX, MIN, etc, ya que por ejemplo puedes tener una suma de 360 y tan solo tienes 3 registros.. que ésto no correspondería al número de filas afectadas si no mas bien a la suma de los 3 registros.. (supongamos que cada uno tuviera un valor de 120 = 360)
Mas bien el que devuelve un Integer indicando el numero de filas afectadas es el
ExecuteNonQuery que ese se ocupa para las DML (Data Manipulation Language) insert, delete, update...
Y en el ejemplo posiblemente el resultado de la query:
Cita: SqlCommand ultimId = new SqlCommand("SELECT MAX(IDENTIFICADOR) FROM TABLA_A ",sqlConnection1);
int re=(int)ultimId.ExecuteScalar();
Tenga un valor mayor a un entero...porque no lo pruebas con un tipo double..??
Saludos friend