Formview : erreur lors d'un update

[Résolu]
Signaler
Messages postés
28
Date d'inscription
mardi 27 septembre 2005
Statut
Membre
Dernière intervention
6 décembre 2006
-
Messages postés
427
Date d'inscription
mercredi 1 octobre 2003
Statut
Membre
Dernière intervention
29 janvier 2008
-
Bonjour à tous,


mon problème est le suivant.

Je crée un Formview alimenter par un ObjectDataSource. Par défaut, le Formview est en mode modification.

Une DropDownList me permet de sélectionner l'enregistrement désiré.


Lorsque je veux "updater" mon enregistrement j'obtient l'erreur suivante :



Citation:
L'index se trouve en dehors des limites du tableau.



Je ne sais pas si cela peut vous aider mais voici la trace de la pile.



Citation:
[IndexOutOfRangeException: L'index se trouve en dehors des limites du tableau.]

System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value) +446

[Exception: n'est pas une valeur valide pour Int32.]

System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value) +465

System.ComponentModel.TypeConverter.ConvertFromInvariantString(String text) +36

System.Web.UI.WebControls.ObjectDataSourceView.ConvertType(Object value, Type type, String paramName) +67

System.Web.UI.WebControls.ObjectDataSourceView.BuildObjectValue(Object value, Type destinationType, String paramName) +170

System.Web.UI.WebControls.ObjectDataSourceView.BuildDataObject(Type dataObjectType, IDictionary inputParameters) +207

System.Web.UI.WebControls.ObjectDataSourceView.ExecuteUpdate(IDictionary
keys, IDictionary values, IDictionary oldValues) +1143

System.Web.UI.DataSourceView.Update(IDictionary keys, IDictionary
values, IDictionary oldValues, DataSourceViewOperationCallback
callback) +78

System.Web.UI.WebControls.FormView.HandleUpdate(String commandArg, Boolean causesValidation) +1152

System.Web.UI.WebControls.FormView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +450

System.Web.UI.WebControls.FormView.OnBubbleEvent(Object source, EventArgs e) +88

System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35

System.Web.UI.WebControls.FormViewRow.OnBubbleEvent(Object source, EventArgs e) +109

System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35

System.Web.UI.WebControls.LinkButton.OnCommand(CommandEventArgs e) +86

System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) +155

System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7

System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11

System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +172

System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4919



Enfin ci-dessous mon code source :



Code :


Selectionnez une manifestation :  
















_____________________________________







CatId:
'>

PlaceId:
'>

SrvcId:
'>

NbPartWaited:
'>


DateBegin:
'>

Id:
'>

ThmId:
'>

Name:
'>

DateEnd:
'>

Comments:
'>







Name:
' Width="311px">

NbPartWaited:
'>


DateBegin:
'>



DateEnd:
'>


' Visible="false">




Comments:
' Height="99px" TextMode="MultiLine" Width="284px">

ThmId:
'>


CatId:
'>


PlaceId:
'>


SrvcId:
'>








CatId:
'>


PlaceId:
'>


SrvcId:
'>


NbPartWaited:
'>


DateBegin:
'>


Id:
'>


ThmId:
'>


Name:
'>


DateEnd:
'>


Comments:
'>































Je vous remercie d'avance pour votre aide.


Damien

5 réponses

Messages postés
427
Date d'inscription
mercredi 1 octobre 2003
Statut
Membre
Dernière intervention
29 janvier 2008
1
euh tu a bien regarder dans la requete parametrée générée si les nom des parametres correspondant bien ?

Moi perso avec ce bug maintenant je me prend pu la tete, je genere insert, delete , select et l update je le fait a la mimine

++
Messages postés
427
Date d'inscription
mercredi 1 octobre 2003
Statut
Membre
Dernière intervention
29 janvier 2008
1
Salut, c'est normal que tu es une erreur sur l'upade :) je te rassure c'est pas de ta faute ;) c'est juste un petit bug dans le generateur de code de visual studio => en fait il y a un petit probleme sur la requete update => il faut que tu modifie le nom de tes parametres pour qu'il correspondent avec les variable des composants dans ta formview en mode update ;)

voila voila :)

++
Messages postés
28
Date d'inscription
mardi 27 septembre 2005
Statut
Membre
Dernière intervention
6 décembre 2006

Salut Bernie,

merci de ta réponse.
J'ai changé les noms pour qu'il soit identique mais j'ai toujours la même erreur.

Peux-tu préciser ta réponse pour que je vérifie si j'ai bien ce qu'il fallait ?

En fait moi, j'ai enlevé la majuscule ci-dessous :
D
ateEnd") %>'>


pour que ce soit identique à ça :

Merci encore.
Messages postés
28
Date d'inscription
mardi 27 septembre 2005
Statut
Membre
Dernière intervention
6 décembre 2006

Merci Bernie,

j'ai trouvé la solution.
En fait ma fonction update avait pour paramètre un objet et non la liste de ces paramètres.
Avec la 2ème solution, c'est ok.

Dans l'absolue, j'aimerai trouvé une solution me permettant de passer un objet directement mais pour l'instant je me contenterai de ça.

Merci pour tes réponses en tout cas.

A bientôt

Damien
Messages postés
427
Date d'inscription
mercredi 1 octobre 2003
Statut
Membre
Dernière intervention
29 janvier 2008
1
No problem

Bonne continuation

++

Par contre si un jour tu tombe sur une info (patch ou autre qui permet de corriger ce bug sa m'interesse ;)... j'ai pas cherché pendant 10 ans non plus mais j'ai jamais rien trouvé ...)