2010-06-16 4 views
2

est-il possible d'accéder au gestionnaire d'événements InfoMessage dans un contexte de données Linq2SQL? Tout notre code utilise ces messages pour afficher des informations utiles à l'utilisateur final et depuis que je suis passé à Linq2SQL, je n'arrive pas à comprendre comment afficher ces messages. J'ai vérifié l'objet de connexion du contexte de données aussi bien que les propriétés de classes sans chance donc je me demande si c'est possible.Linq2SQL InfoMessage

Merci d'avance.

+0

avez-vous essayé de vous connecter au journal du datacontext? –

+0

aussi, vous pouvez toujours obtenir la connexion hors du datacontext, transtyper en sqlconnection (puisque c'est linq2sql, qui devrait être sûr :) et ensuite brancher à l'infomessage comme vous le faisiez auparavant (je pense, ne l'ai pas essayé) –

Répondre

2

Vous devez simplement jeter la connexion du contexte à un SqlConnection puis brancher un message de votre routine de gestion d'informations:

YourDataContext ctx = new YourDataContext(); 

SqlConnection con = (cufe.Connection as SqlConnection); 

if(con != null) 
{ 
    con.InfoMessage += new SqlInfoMessageEventHandler(con_InfoMessage); 
} 

et puis bien sûr mettre en œuvre cette SqlInfoMessageEventHandler dans votre code.

+0

Fonctionne grand merci :) –

+0

@Paul Oakham: ok, donc si cela fonctionne très bien et donc résolu votre problème, s'il vous plaît ** accepter ** cette réponse - cliquez sur la grosse coche à la gauche de la question. –