porque no usas un SP (stored procedure), usando parametros de entrada y uno de salida que te regresará el ID del registro
INSERTADO
Podría quedarte algo como ésto
Cita: CREATE PROCEDURE InsertarRegistro
(
@parametro1 int,
@parametro2 int,
@ID INT,
@ultimoID OUTPUT
)
AS
INSERT INTO Tabla
(
Campo1,
Campo2
)
VALUES
(
@parametro1,
@parametro2
)
WHERE ID = @ID
SELECT
@ultimoID = @@identity
Y con ello recuperas el valor de tu id.
No es dificl, intentalo.
Saludos y suerte