Bonjour,

est-il possible pour un trigger de renvoyer une valeur ?

Plus précisément voici le trigger :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE TRIGGER ExtendedATrigger
   ON ExtendedA
   INSTEAD OF INSERT
AS
BEGIN
    SET NOCOUNT ON;
 
    INSERT INTO TableA(x, y)
    SELECT x, y FROM inserted;
 
    INSERT INTO TableB(TableAId, n, m)
    SELECT @@IDENTITY, n, m FROM inserted;
END
Le problème est le suivant :
ce trigger remplace une insertion dans la vue "ExtendedA"; or la valeur de retour de l'insertion est interprétée par une méthode (de LINQ) comme la clé de la dernière valeur insérée.
Le problème est que cette méthode lève une exception si la valeur de retour est null.

Donc il faut lui renvoyer @@IDENTITY.

Merci.