if a transaction rolls back or fails, the identity() columns still increment.
it sounds like an error occurred inserting the data that was not handled/reported by the .net application.
i've seen things form an app, like sticking zero in a foreign key column, or leaving values null for NOT NULL columns, for example.
those things return an error from SQL, but the app might jsut be assuming that the data was updated/inserted, without displaying any errors returned.
Lowell