1 pièce(s) jointe(s)
Command sql update dans datalist via image bouton ( vs2008-vb.net)
Bonjour,
je vous expose rapidement mon probleme,
J'alimente un datalist via SQL et a l'interieur de ce datalist j'ai inserer un image button pour que l'utilisateur n'ai juste d'a cliquer pour valider la ligne.
j'ai reussi a configurer proprement mon image bouton pour qu'il execute mon code ( test avec simple msgbox ok) mais quand j'integre une commande SQL je n'ai pas l'impression qu'il l'execute( un update d'un status dans une table )
voici le code du img button
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| Private Sub DataList1_ItemCommand(ByVal source As Object, _
ByVal e As System.Web.UI.WebControls.DataListCommandEventArgs) _
Handles MyDataListCust0.ItemCommand
Dim idfnclab As Label
If (e.CommandName = "valid") Then
idfnclab = e.Item.FindControl("idfnc")
Dim objcnx As New SqlConnection(System.Configuration.ConfigurationManager.AppSettings("dsn"))
Dim STRSQL2 As String = "UPDATE fnc_status SET status='Vlog' WHERE id_fnc=" & idfnclab.Text
Dim objcmd2 As New SqlCommand(STRSQL2, objcnx)
Try
objcmd2.Connection.Open()
objcmd2.ExecuteNonQuery()
Catch ex As Exception
Dim msg1 As String
msg1 = ex.Message
End Try
objcnx.Close()
Response.Redirect("main.aspx")
Else
End If
End Sub |
Ma ligne sql est bonne quand je l'execute autrement elle fonctionne.
Je suis pas un super developpeur ( ca doit se voir dans le code..) je recupere ici et la les exemples que je trouve et que j'adapte, du coup ca doit parfois etre un peu tordu..
Si quelqu'un a une idée. ou quelques indices.
Merci d'avance.
sinon je m'oriente vers un sous formulaire, mais j'amais bien cette idée de bouton
effectivement maintenant j'ai une erreur
Citation:
Argument de publication ou de rappel non valide. La validation d'événement est activée via <pages enableEventValidation="true"/> dans la configuration ou via <%@ Page EnableEventValidation="true" %> dans une page. Pour des raisons de sécurité, cette fonctionnalité vérifie si les arguments des événements de publication ou de rappel proviennent du contrôle serveur qui les a rendus à l'origine. Si les données sont valides et attendues, utilisez la méthode ClientScriptManager.RegisterForEventValidation afin d'inscrire les données de publication ou de rappel pour la validation.
info plus bas
Citation:
Erreur source:
Une exception non gérée s'est produite lors de l'exécution de la demande Web actuelle. Les informations relatives à l'origine et l'emplacement de l'exception peuvent être identifiées en utilisant la trace de la pile d'exception ci-dessous.
Trace de la pile:
[ArgumentException: Argument de publication ou de rappel non valide. La validation d'événement est activée via <pages enableEventValidation="true"/> dans la configuration ou via <%@ Page EnableEventValidation="true" %> dans une page. Pour des raisons de sécurité, cette fonctionnalité vérifie si les arguments des événements de publication ou de rappel proviennent du contrôle serveur qui les a rendus à l'origine. Si les données sont valides et attendues, utilisez la méthode ClientScriptManager.RegisterForEventValidation afin d'inscrire les données de publication ou de rappel pour la validation.]
System.Web.UI.ClientScriptManager.ValidateEvent(String uniqueId, String argument) +8623897
System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +72
System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(String eventArgument) +35
System.Web.UI.WebControls.ImageButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
Page aspx ( attention c'est un controle utilisateur que j'integre )
Autant pour moi effectivement le probleme etait plutot dans mon pageload.
avec un oublie de if not postback..
la ca fonctionne, et finalement la sequence se met bien a jour.
A force d'avoir la tete dans le code on voit pas les choses de base.
Mon datalist va chercher une table ou je ne gere pas le status du coup meme si je valide la ligne elle ne disaprait pas.
Je modifie mon code coté sql et ca devrait aller.
Merci encore d'avoir pris le temps de regarder mon probleme, ca aide a se focaliser quand quelqu'un jette un oeil
Merci encore.