Я использую ISession. SaveOrUpdate для вставки новых объектов и updaet существующий.
Если я использую ISession. Сохранить (..) это возвращает идентификационные данные вставленной записи.
Для SaveOrUpdate я делаю следующее:
public int Save(Vehicle entity) {
using (var txn = _session.BeginTransaction()) {
_session.SaveOrUpdate(entity);
txn.Commit();
}
return entity.Id;
}
Действительно ли это - лучший способ возвратить мои идентификационные данные?
Спасибо,
Ben
В этом нет ничего плохого. Но поскольку идентификатор установлен для объекта, почему бы не сделать так, чтобы метод возвращал значение void:
public void Save(Vehicle entity) {
using (var txn = _session.BeginTransaction()) {
_session.SaveOrUpdate(entity);
txn.Commit();
}
}