Работает ли это в автоматическом режиме (Oracle, Firebird) через InsertWighIdentity? Если да, то где можно пример посмотреть?
Если нет, то как проще допилить?
Я пока извернулся так, но мне скоро понадобится возвращаемое значение, не представляю как его взять
[SqlProperty(ServerSideOnly = true)]
[SqlProperty("Firebird", "gen_id(MY_SEQUENCE, 1)", ServerSideOnly = true)]
[SqlProperty("Oracle", "MY_SEQUENCE.nextval", ServerSideOnly = true)]
public static long NewId
{
get { throw new NotSupportedException("NewId is server side only"); }
}
Проблема еще в том, что фаерберд делает постинкремент сиквенса, а оракл преинкремент. Идеологически правильным выходом будет только автоматический запрос нового Id перед выполнением insert.