ExecuteScalar() возвращает ноль, хотя данные были добавлены в БД

У меня есть приведенный ниже код, в котором я пытаюсь вставить данные в таблицу и вернуть идентификатор (данный автоматическим увеличением) нового элемента.

int newEquipmentID = new int();

query = database.ParameterizedQueryString("INSERT INTO Equipment (EquipmentTypeID) VALUES ({0})", "equipmenttypeID");

newEquipmentID = (int)database.Connection.ExecuteScalar(query, DefaultTimeout, equipment.EquipmentTypeID);

Но он терпит неудачу и возвращает null, как если бы новый элемент еще не был добавлен. Но на самом деле я вижу, что новый элемент делает простую консультацию в БД.

Мой вопрос: «когда» данные фактически добавляются в БД и как я могу получить идентификатор нового добавленного элемента. Спасибо!

7
задан abatishchev 18 April 2012 в 14:10
поделиться