Har ett mycket irriterande fel, Får felet åtgärden avbröts efter ett visst antal klickningar på sidan (uppstår på olika sidor oftast) och då det måste läsas från databasen. Har försökt gå igenom alla öppningar och stängningar för att kontrollera så att connections till databasen stängs.. och enligt vs debug läger verkar det som om det gör det. hej, tack så hemskt mycket detta åtgärdade mitt problem..problem med databas "åtgärden avbröts"
Uppbyggnad:
Sidan är uppbyggd med hjälp av en default.aspx sida samt några UserControls samt en placeholder.
Anväder mig även av en access databas samt OLEDB.
Bifogar därför default sidans vb kod.
'Server.ScriptTimeout = 60000
Dim strConn As String = ConfigurationSettings.AppSettings("Connstr").Replace("%MAPPATH%", Server.MapPath(" "))
Dim myConn As New OleDbConnection(strConn)
Dim PageChoice As String = Request.QueryString("page")
If User.IsInRole("admin") = True Then
loggain.Visible = False
loggaut.Visible = True
orgmeny.Visible = False
adminmeny.Visible = True
nollningmeny.Visible = False
personalmeny.Visible = False
vipmeny.Visible = False
guldvipmeny.Visible = False
ElseIf User.IsInRole("nollning") = True Then
loggain.Visible = False
loggaut.Visible = True
orgmeny.Visible = False
adminmeny.Visible = False
nollningmeny.Visible = True
personalmeny.Visible = False
vipmeny.Visible = False
guldvipmeny.Visible = False
ElseIf User.IsInRole("personal") = True Then
loggain.Visible = False
loggaut.Visible = True
orgmeny.Visible = False
adminmeny.Visible = False
nollningmeny.Visible = False
personalmeny.Visible = True
vipmeny.Visible = False
guldvipmeny.Visible = False
ElseIf User.IsInRole("vip") = True Then
loggain.Visible = False
loggaut.Visible = True
orgmeny.Visible = False
adminmeny.Visible = False
nollningmeny.Visible = False
personalmeny.Visible = False
vipmeny.Visible = True
guldvipmeny.Visible = False
ElseIf User.IsInRole("guldvip") = True Then
loggain.Visible = False
loggaut.Visible = True
orgmeny.Visible = False
adminmeny.Visible = False
nollningmeny.Visible = False
personalmeny.Visible = False
vipmeny.Visible = False
guldvipmeny.Visible = True
Else
loggain.Visible = True
loggaut.Visible = False
orgmeny.Visible = True
adminmeny.Visible = False
nollningmeny.Visible = False
personalmeny.Visible = False
vipmeny.Visible = False
guldvipmeny.Visible = False
End If
Try
'Om page="" skickas besökaren till startsidan
If PageChoice = "" Then
If User.IsInRole("admin") = True Then
Dim myControl1 As Control = LoadControl("adminstart.ascx")
placemitt.Controls.Add(myControl1)
sida.Text = ""
ElseIf User.IsInRole("nollning") = True Then
Dim myControl1 As Control = LoadControl("nschema.ascx")
placemitt.Controls.Add(myControl1)
sida.Text = ""
ElseIf User.IsInRole("personal") = True Then
Dim myControl1 As Control = LoadControl("persstart.ascx")
placemitt.Controls.Add(myControl1)
sida.Text = ""
ElseIf User.IsInRole("vip") = True Then
Dim myControl1 As Control = LoadControl("vipstart.ascx")
placemitt.Controls.Add(myControl1)
sida.Text = ""
ElseIf User.IsInRole("guldvip") = True Then
Dim myControl1 As Control = LoadControl("guldvipstart.ascx")
placemitt.Controls.Add(myControl1)
sida.Text = ""
Else
Dim myControl1 As Control = LoadControl("start.ascx")
placemitt.Controls.Add(myControl1)
sida.Text = ""
End If
Else
Dim myControl2 As Control = LoadControl(PageChoice & ".ascx")
placemitt.Controls.Add(myControl2)
'sql sats som tar de värdena från databasen
Dim strSQL As String = "SELECT Meny.menyNamn FROM(meny) WHERE Meny.lank= '" & PageChoice & "';"
Dim myCommand As New OleDbCommand(strSQL, myConn)
Dim myDataReader As OleDbDataReader
myConn.Open()
myDataReader = myCommand.ExecuteReader()
Do While (myDataReader.Read()) = True
Dim sidan As String = myDataReader("MenyNamn")
sida.Text = " " + sidan + ""
Loop
myDataReader.Close()
myDataReader = Nothing
myConn.Close()
myConn = Nothing
End If
Catch ex As Exception
'fel
' Logga felet och visa ett allmänt felmeddelande för användaren
'Dim myControl As Control = LoadControl("error.ascx")
'placemitt.Controls.Add(myControl)
lblMessage.Text = ex.Message
End Try
End Sub
'**********************************************************
'När användaren loggar ut skickas det till default.aspx
'**********************************************************
Sub Logout_Click(ByVal Src As Object, ByVal E As EventArgs)
FormsAuthentication.SignOut()
Response.Clear()
Response.Redirect("default.aspx")
End Sub
Meny.aspx.vb körs även i en UC varje gång sidan laddas Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
'Server.ScriptTimeout = 60000
'Skapar anslutning (anropar från web.config)
Dim strConn As String = ConfigurationSettings.AppSettings("Connstr").Replace("%MAPPATH%", Server.MapPath(" "))
'Dim myConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath("database/vipdb.mdb"))
Dim myConn As New OleDbConnection(strConn)
'sql sats som tar de värdena från databasen
Dim strSQL As String = "SELECT Meny.*, Meny.layoutNr FROM(meny)WHERE (((Meny.layoutNr)=1));"
'skapar anslutning
Dim myCommand As New OleDbCommand(strSQL, myConn)
Dim myDataReader As OleDbDataReader
'myConn.ConnectionTimeout() = 30
Try
myConn.Open()
myDataReader = myCommand.ExecuteReader()
menyReapeter.DataSource = myDataReader
'<--Bind data to Repeater-->
menyReapeter.DataBind()
myDataReader.Close()
myDataReader = Nothing
myConn.Close()
myConn = Nothing
Catch ex As Exception
lblMessage.Text = ex.Message
End Try
End Sub
Någon som har ngn ide vad felet kan bero på? samt hur jag skall åtgärde felet?
PS. mkt kod, men jag visste inte vad jag skulle bifoga så det fick bli hela sidan =)
Sv: problem med databas "åtgärden avbröts"
har för mig att jag fick något liknande fel förut, lösningen var att använda Dispose() på ditt connectionobject.
/mSv: problem med databas "åtgärden avbröts"