Jeg har lavet en Booking kalender i VB .Net. For at kalenderen er opdateret kører der en Timer der indlæser data fra SQL databasen. Det fungerer i princippet godt nok men er langsomt OG man kan tydelig se opdateringen med sekunders interval. Jeg søger i stedet en løsning der kan detektere ændringer i databasen: BookingSamlet og faldt over denne men jeg er ikke på det rene med hvordan den skal implementeres:
Sub Initialization() ' Create a dependency connection. SqlDependency.Start(connectionString, queueName) End Sub
Sub SomeMethod() ' Assume connection is an open SqlConnection. ' Create a new SqlCommand object. Using command As New SqlCommand( _ "SELECT ShipperID, CompanyName, Phone FROM dbo.Shippers", _ connection)
' Create a dependency and associate it with the SqlCommand. Dim dependency As New SqlDependency(command) ' Maintain the refence in a class member. ' Subscribe to the SqlDependency event. AddHandler dependency.OnChange, AddressOf OnDependencyChange
' Execute the command. Using reader = command.ExecuteReader() ' Process the DataReader. End Using End Using End Sub
' Handler method Sub OnDependencyChange(ByVal sender As Object, _ ByVal e As SqlNotificationEventArgs) ' Handle the event (for example, invalidate this cache entry). End Sub
Sub Termination() ' Release the dependency SqlDependency.Stop(connectionString, queueName) End Sub
Jeg opgav at anvende SQLDependency og lavede i stedet en Checksum (Hash Field) hvilket faktisk fungerer rigtigt godt. Tak for din hjælp selvom jeg er lidt tung i forståelsen :-) Vh Steen
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.