Первый пользователь stackoverflow, но я следил за его развитием на Coding Horror.
У меня сильная головная боль с вышеуказанной ошибкой. У меня установлен ELMAH и Google Analytics. По мере того, как трафик сайта увеличивался, я также видел количество раз, когда я видел эту ошибку.
Я приложил все усилия, чтобы следовать принципам Microsoft: http://msdn.microsoft.com/en-us/library/ms971481.aspx на протяжении всей разработки, и я максимально оптимизировал свой код, основываясь на нескольких источниках рекомендаций в Интернете.
У меня есть SqlConnection в публичном классе;
Public Class pitstop
Public Shared oConn As New System.Data.SqlClient.SqlConnection
Public Shared Sub doConnect()
If oConn.State = ConnectionState.Closed Then
oConn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings("pitstopConnectionString").ConnectionString
oConn.Open()
End If
End Sub
Public Shared Sub doGarbage()
oConn.Dispose()
End Sub
' /// other code ///
End Class
И на моих основных страницах приложений я делаю то же самое, что и это:
Private Sub doPump()
pitstop.doConnect()
Dim cmd As New System.Data.SqlClient.SqlCommand("doGetCategory", pitstop.oConn)
Dim dt As New DataTable
Dim dr As SqlDataReader
cmd.Parameters.Add("@cat", SqlDbType.Int)
cmd.Parameters("@cat").Value = CType(Request.QueryString("id"), Integer)
cmd.CommandType = CommandType.StoredProcedure
dr = cmd.ExecuteReader()
While dr.Read()
If dr.HasRows = True Then
litCategory.Text = dr("category")
litCategoryDesc.Text = pitstop.doMakeReadyForHTML(dr("desc"))
End If
End While
cmd = Nothing
dr.Close()
pitstop.doGarbage()
End Sub
Я использовал этот метод повсюду, и большую часть времени он работает хорошо, но теперь сайт ужасно занят, драмы начались! У кого-нибудь есть идеи?
Я бы предпочел не переписывать горы кода, но я открыт для предложений.
:)
Chris