VB.NET OleDb Connection.Close () /. Dispose () выполняется слишком долго - PullRequest
0 голосов
/ 06 июня 2019

OleDb connection.close () для выполнения занимает> 40 с каждый, при выполнении нескольких операций за один раз требуется 3 минуты для завершения всего.Понятия не имею, что делать, похоже, ни у кого в Интернете нет решения.В очень редких случаях он работает нормально, и со скоростью, которую я ожидал, я не знал бы, как воспроизвести это, хотя.

Public Sub loadCoords(orderstoset As List(Of Order))

    For Each order In orderstoset

        Dim query As String = "SELECT Address FROM Clients WHERE ClientID = '" & order.getID & "';"
        Dim myConnection As OleDbConnection = New OleDbConnection
        Dim myDataReader As OleDbDataReader
        myConnection.ConnectionString =
            "provider=Microsoft.ace.oledb.12.0;Data Source = C:\Users\jackw\OneDrive\Access Database\WaggyTailzDatabase.accdb"

        Try

            myConnection.Open()
            Dim myCommand As OleDbCommand = New OleDbCommand(query, myConnection)
            myDataReader = myCommand.ExecuteReader

            While myDataReader.Read

                Dim coords As String
                Dim myOrder As New Order
                Dim address As String = myDataReader("Address").ToString
                coords = addressToLatLon(address)
                order.setCoords(coords)
                i += 1

            End While

        Catch ex As Exception

            MsgBox(ex.Message)

        End Try

        myConnection.Close()

    Next

End Sub

Также пробовал .Dispose (), тоже самое.Никаких сообщений об ошибках или чего-либо еще, просто занимает много времени, что очень раздражает, учитывая количество раз, когда я делаю это.Это не единственный раздел, где это происходит, есть еще несколько, и все они делают одно и то же.
Спасибо за любую помощь

...