bonjour,
voilà mon soucis, je dois tester l'accès à une base de données, et envoyer le résultat via un event j'ai donc écrit ceci :
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 delegate void OnConnectionEventHandler(object sender, SqlEventArgs e); class TestConnection { public event OnConnectionEventHandler ConnEvent=null; private string connString = "Server=.;Database=tests;Trusted_Connection=True;"; public void TestConnectionMethod() { SqlConnection myConn = new SqlConnection(connString); bool isOpened = false; string message = string.Empty; try { myConn.Open(); myConn.Close(); isOpened = true; message = "Connection opened"; } catch (Exception ex) { isOpened = false; message = "can't open connection" + ex.Message.ToString(); } ConnEvent(this, new SqlEventArgs(message, isOpened)); } } }
enfin dans le corps du programme de test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 namespace SQL_Server___Reader { class SqlEventArgs:EventArgs { public string strSqlMessage { get; set; } public bool bSqlState { get; set; } public SqlEventArgs(string sysMessage,bool bSysMessage) { this.strSqlMessage = sysMessage; this.bSqlState = bSysMessage; } } }
Mais à chaque lancement du programme j'ai cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 static void Main(string[] args) { TestConnection t = new TestConnection(); t.TestConnectionMethod(); t.ConnEvent += new OnConnectionEventHandler(t_ConnEventHander); Console.ReadLine(); } static void t_ConnEventHander(object sender, SqlEventArgs e) { Console.WriteLine(e.strSqlMessage); }
Auriez vous une idée, s'il vous plait ?System.NullReferenceException was unhandled
Message=Object reference not set to an instance of an object.
Source=SQL Server - Reader
StackTrace:
at SQL_Server___Reader.TestConnection.TestConnectionMethod() in D:\Documents\Visual Studio 2010\Projects\SQL Server\SQL Server - Reader\TestConnection.cs:line 37
at SQL_Server___Reader.Program.Main(String[] args) in D:\Documents\Visual Studio 2010\Projects\SQL Server\SQL Server - Reader\Program.cs:line 18
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
merci par avance .
Partager