SQL Server-Benachrichtigungen - My OnChange wird nicht ausgelöst

Ich möchte SQL Server-Benachrichtigungen verwenden, um Einfügeereignisse in meiner Datenbank in einer winforms-App zu erfassen. Ich versuche, das SQLDependency-Objekt zu verwenden. Die MSDN-Artikel lassen dies ziemlich einfach erscheinen. Deshalb habe ich eine kleine Beispielanwendung erstellt, um es zu versuchen. Das Ereignis scheint nur ausgelöst zu werden, wenn ich meine Anwendung zum ersten Mal eingebe (MessageBox wird angezeigt). Das Einfügen von Daten in die Tabelle löst anscheinend nicht das Ereignis OnChange aus. Kann mir jemand sagen, was ich vermisse? Vielen Dank!

 public Main()
    {
        InitializeComponent();
        var check = EnoughPermission();
        SqlDependency.Stop(constr);
        SqlDependency.Start(constr);
        if(connection == null)
        {
            connection = new SqlConnection(constr);
        }
        if(command == null)
        {
            command = new SqlCommand("Select ID, ChatMessage FROM dbo.Chat",connection);
        }
        connection.Open();
        command.Notification = null;
        SqlDependency dependency = new SqlDependency(command);
        dependency.OnChange += new OnChangeEventHandler(dependency_OnChange);
        command.ExecuteReader();
    }





    private void dependency_OnChange(object sender, SqlNotificationEventArgs e)
    {
        MessageBox.Show("Change!");
    }

Antworten auf die Frage(2)

Ihre Antwort auf die Frage