Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Konfigurálható SqlCommand úgy, hogy értesítést hozzon létre, ha az adatok megváltoznak a kiszolgálóról való lekérése után, és az eredményhalmaz más lenne, ha a lekérdezést újra végrehajtanák. Ez olyan helyzetekben hasznos, amikor egyéni értesítési üzenetsorokat szeretne használni a kiszolgálón, vagy ha nem szeretné fenntartani az élő objektumokat.
Az értesítési kérelem létrehozása
Objektummal SqlNotificationRequest létrehozhatja az értesítési kérelmet úgy, hogy azt egy SqlCommand objektumhoz köti. A kérés létrehozása után már nincs szüksége az objektumra SqlNotificationRequest . Lekérdezheti a várólistát az értesítések esetében, és megfelelően reagálhat. Az értesítések akkor is előfordulhatnak, ha az alkalmazás le van állítva, majd később újraindul.
Amikor a társított értesítéssel rendelkező parancs végrehajtásra kerül, az eredeti eredménykészlet bármilyen változása üzenetet küld az értesítési kérelemben beállított SQL Server sorkezelőnek.
Az SQL Server-üzenetsor lekérdezése és az üzenet értelmezése az alkalmazásra jellemző. Az alkalmazás feladata az üzenetsor lekérdezése és az üzenet tartalma alapján történő reagálás.
Megjegyzés:
Ha SQL Server-értesítési kéréseket SqlDependencyhasznál, az alapértelmezett szolgáltatásnév helyett hozzon létre saját üzenetsornevet.
Nincsenek új ügyféloldali biztonsági elemek a következőhöz SqlNotificationRequest: . Ez elsősorban egy kiszolgálói funkció, és a kiszolgáló speciális jogosultságokat hozott létre, amelyekkel a felhasználóknak rendelkezniük kell ahhoz, hogy értesítést kérhessenek.
Example
Az alábbi kódrészlet bemutatja, hogyan hozhat létre egy SqlNotificationRequest és társíthatja egy SqlCommand.
// Assume connection is an open SqlConnection.
// Create a new SqlCommand object.
SqlCommand command=new SqlCommand(
"SELECT ShipperID, CompanyName, Phone FROM dbo.Shippers", connection);
// Create a SqlNotificationRequest object.
SqlNotificationRequest notificationRequest=new SqlNotificationRequest();
notificationRequest.id="NotificationID";
notificationRequest.Service="mySSBQueue";
// Associate the notification request with the command.
command.Notification=notificationRequest;
// Execute the command.
command.ExecuteReader();
// Process the DataReader.
// You can use Transact-SQL syntax to periodically poll the
// SQL Server queue to see if you have a new message.