2010-08-02 5 views
0

J'ai une application silverlight 4 ria, et j'aimerais lancer un événement après que des entités ont été soumises à la base de données. Je pensais que je pouvais utiliser les méthodes de dataclassescontext commeÉvénement OnSubmitted

OnCreated() OnIdChanged()

mais ils sont appelés avant soumis, et je veux seulement déclencher l'événement une fois une nouvelle entité est ajoutée à la db, et une fois qu'un changement d'identifiant a été soumis.

+0

Que dérive dataclassescontext? – Timwi

+0

c'est le linq-2-sql dbml automatisé – Jakob

+0

je sais. Pourriez-vous répondre à la question de toute façon? Quelle est sa classe de base? – Timwi

Répondre

1

Vous pouvez utiliser des méthodes de remplacement appelées "InsertX", "UpdateX" et "DeleteX" dans votre contexte dataclasses, où "X" est le nom de la table. Par exemple, si votre table d'entités s'appelle Utilisateurs, les méthodes sont appelées partial void InsertUser(User instance) etc. Ces méthodes sont appelées pendant l'étape SubmitChanges(), et l'insertion/suppression/mise à jour "standard" n'est effectuée que si une telle méthode de remplacement est utilisée. pas présent.

Il existe plusieurs éléments à prendre en compte lors de l'écriture de ces méthodes de remplacement Insérer/Mettre à jour/Supprimer. Ceux-ci sont documentés ici sur MSDN: Responsibilities of the Developer In Overriding Default Behavior (LINQ to SQL)

+0

Donc c'est ce que j'ai mal compris :) Vous êtes génial! – Jakob

+0

Merci :) ----- – Timwi