Non puoi ottenerlo senza chiamare SaveChanges()
. Pensaci. L'ID viene dal DB. SaveChanges()
è la prima cosa che causa la comunicazione con il DB.
Se vuoi annullare, hai diverse scelte:
- In molti casi, non è necessario conoscere l'ID lato client durante l'inserimento. Basta creare la relazione.
- Utilizza un ID generabile dal client come un GUID.
- Utilizza
TransactionScope
per una transazione DB "reale". - Esegui un annullamento (
DeleteObject
) invece di un rollback.