Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Com base na infraestrutura do Service Broker, as notificações de consulta permitem que os aplicativos sejam notificados em caso de alteração nos dados. Esse recurso é particularmente útil para aplicativos que fornecem um cache de informações de um banco de dados, como um aplicativo da Web, e precisam ser notificados quando os dados de origem são alterados.
Microsoft. Data.SqlClient fornece duas classes para notificações de consulta:
Use SqlNotificationRequest para executar um comando com uma solicitação de notificação e processar as mensagens do Service Broker por conta própria.
Use SqlDependency para detectar alterações por meio do
OnChangeevento. Microsoft. Data.SqlClient gerencia o ouvinte e expõe informações de notificação nos argumentos do evento.
Importante
Não use System.Data.SqlClient para desenvolvimento novo. Use Microsoft.Data.SqlClient em vez disso. A classe ASP.NET Framework SqlCacheDependency requer System.Data.SqlClient e não se integra ao Microsoft.Data.SqlClient. Para novos aplicativos Microsoft.Data.SqlClient, assine SqlDependency.OnChange e invalide entradas por meio da API de cache do aplicativo.
As notificações de consulta são usadas para aplicativos que precisam atualizar exibições ou caches em resposta a alterações nos dados subjacentes. SQL Server permite que aplicativos .NET enviem um comando e solicitem uma notificação se o mesmo comando produzir conjuntos de resultados diferentes daqueles recuperados inicialmente. As notificações geradas no servidor são enviadas por meio de filas para serem processadas posteriormente.
Você pode configurar notificações para as declarações SELECT e EXECUTE. Ao usar uma instruçãoEXECUTE, SQL Server registra uma notificação para o comando executado em vez da EXECUTE própria instrução. O comando deve atender aos requisitos e limitações de uma SELECT declaração. Quando um comando que registra uma notificação contiver mais de uma instrução, o Mecanismo de Banco de Dados criará uma notificação para cada instrução no lote.
Se você estiver desenvolvendo um aplicativo em que precise receber notificações confiáveis imediatamente quando os dados forem alterados, examine as seções Planejando uma estratégia eficiente das notificações de consulta e Alternativas para notificações de consulta no artigo Planejando para notificações. Para obter mais informações sobre as notificações de consulta e o SQL Server Service Broker, consulte os seguintes links para artigos na documentação do SQL Server.
Documentação do SQL Server
Nesta seção
Habilitando notificações de consulta Discute como usar notificações de consulta, incluindo os requisitos para habilitá-las e usá-las.
Detectando alterações com SqlDependency Demonstra como detectar quando os resultados da consulta serão diferentes daqueles recebidos originalmente.
Execução de SqlCommand com um SqlNotificationRequest Demonstra como configurar o SqlCommand objeto para uma notificação de consulta.
Referência
SqlNotificationRequest Descreve a classe SqlNotificationRequest e todos os membros dela.
SqlDependency Descreve a classe SqlDependency e todos os membros dela.
SqlCacheDependencyDescreve a classe de dependência de cache ASP.NET Framework para System.Data.SqlClient. Não encapsula as dependências do Microsoft.Data.SqlClient.