Hejsan. Du måste nog köra Insert() innan du ändrar InsertCommand till insert_test2. Ok... om du råkar ha lite tid så kanske du kan förklara lite mer i detalj... (eller någon annan) Såhär, fast med felhantering om du vill ha det: Tack för att du tar dig tid Johan. Nu funkar det.... var tvungen att lägga in en: ".InsertParameters.Clear()" mellan de två anropen av SP:s.Dubbla SPROC:s vållar bekymmer
Ingångsvärden:
Två textrutor ("1TextBox","2TextBox")
En knapp ("Button1")
Det som ska hända är att man ska kunna skriva en sak i den ena textboxen och en annan i den andra. Med hjälp av två anrop till två store procedure:s ska värdena läggas till en tabell.
Jo jag vet att det säkert finns miljarder bättre lösningar, men i mitt exempel så är det väldigt förenklat. Problemet ligger egentligen i hur jag ska kunna anropa två skillda store procedures.
Kanske ska tillägga att kommunikationen med SQL-databasen funkar bra och likaså Sproc:arna... men hur jag än gör så lyckas jag bara få den ena textboxens värde inlagt i databasen.
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles submitButton.Click
Dim tryoutDataSource As New SqlDataSource()
tryoutDataSource.ConnectionString = ConfigurationManager.ConnectionStrings("ConnectionString1").ToString
tryoutDataSource.InsertCommandType = SqlDataSourceCommandType.StoredProcedure
tryoutDataSource.InsertCommand = "insert_test1"
tryoutDataSource.InsertParameters.Add("title", 1TextBox.Text)
tryoutDataSource.InsertCommand = "insert_test2"
tryoutDataSource.InsertParameters.Add("title", 2TextBox.Text)
Dim rowsAffected As Integer = 0
Try
rowsAffected = tryoutDataSource.Insert()
Catch ex As Exception
Server.Transfer("fault.aspx")
Finally
tryoutDataSource = Nothing
End Try
If rowsAffected <> 1 Then
Server.Transfer("fault.aspx")
Else
Server.Transfer("submitted.aspx")
End If
End Sub
End Class
Sv: Dubbla SPROC:s vållar bekymmer
/JohanSv:Dubbla SPROC:s vållar bekymmer
Sv: Dubbla SPROC:s vållar bekymmer
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles submitButton.Click
Dim tryoutDataSource As New SqlDataSource()
tryoutDataSource.ConnectionString = ConfigurationManager.ConnectionStrings("ConnectionString1").ToString
tryoutDataSource.InsertCommandType = SqlDataSourceCommandType.StoredProcedure
tryoutDataSource.InsertCommand = "insert_test1"
tryoutDataSource.InsertParameters.Add("title", 1TextBox.Text)
tryoutDataSource.Insert()
tryoutDataSource.InsertCommand = "insert_test2"
tryoutDataSource.InsertParameters.Add("title", 2TextBox.Text)
Dim rowsAffected As Integer = 0
Try
rowsAffected = tryoutDataSource.Insert()
Catch ex As Exception
Server.Transfer("fault.aspx")
Finally
tryoutDataSource = Nothing
End Try
If rowsAffected <> 1 Then
Server.Transfer("fault.aspx")
Else
Server.Transfer("submitted.aspx")
End If
End Sub
End Class
/Johan
Sv:Dubbla SPROC:s vållar bekymmer
Jag gjorde förändringen som du föreslår, tyvärr med fortsatt samma resultat... Endast värdet som jag matar in i "1TextBox" läggs till i tabellen.
Felhanteringen som du nämenr är kanske något man skulle lägga till... isåfall hur? Sv: Dubbla SPROC:s vållar bekymmer
Tack för hjälpen!