title: SqlDependency.OnChange keep firing
body: <p>from what i understood,SqlDependency.OnChange should only fire when the query result changes
  here is a small application, i placed a counter inside the event, and displayed it, it seem like it continuously fire even if i didnt add new rows, i tried some examples from some blogs, and i get the same results, what am i doing wrong?
  i checked &quot;sys.transmission_queue&quot; and &quot;sys.dm_qn_subscriptions&quot; both were empty
  the SqlNotificationEventArgs properties value are &quot;Info = Invalid,Source = Statement,Type = Subscribe&quot;</p>
  <pre><code>    private void Runnn()
      {
          var query = from x in Entities.Contacts select x;
          qqq.ItemsSource = query.ToList();
          con = new SqlConnection(@&quot;server=PC\sqlexpress08;
               database=test2db;Trusted_Connection=yes;&quot;);
          command = new SqlCommand(&quot;SELECT ID,Name FROM dbo.Contacts&quot;,con);
          BeginSqlDependency(con.ConnectionString);
          
      }
      private void BeginSqlDependency(string connection)
      {
          SqlDependency.Stop(connection);
          SqlDependency.Start(connection);
          RegisterSqlDependency();
      }
      private void RegisterSqlDependency()
      {
          
          command.Notification = null;
          dependency = new SqlDependency(command);
          dependency.OnChange += new OnChangeEventHandler(DependencyOnChange);
          RegisterSqlCommand();
      }
      private void RegisterSqlCommand()
      {
          con.Open();
          command.ExecuteNonQuery();
          con.Close();
      }
      private void DependencyOnChange(object sender, SqlNotificationEventArgs e)
      {
          SqlDependency dependency = (SqlDependency)sender;
          dependency.OnChange -= DependencyOnChange;
          var query = from x in Entities.Contacts select x;
          Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Background, _
               new Action(() =&gt; { qqq.ItemsSource = null; qqq.ItemsSource = 
               query.ToList(); ee.Text = i.ToString(); }));
          RegisterSqlDependency();
          i++;
      }
      ##SQL server Express SP2 2008##
      ALTER DATABASE test2db SET ENABLE_BROKER; 
      CREATE QUEUE ContactChangeMessages;
      CREATE SERVICE ContactChangeNotifications
      ON QUEUE ContactChangeMessages
      ([http://schemas.microsoft.com/SQL/Notifications/PostQueryNotification]);
  </code></pre>