Megosztás a következőn keresztül:


SqlCommand-végrehajtás sqlNotificationRequest használatával

ADO.NET letöltése

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.

Következő lépések