Salut,
Dans un DataSet typé (xsd) se trouve une table "Ligne" contenant une colonne "NoSinueuse" (Int32).
Un Textbox contient une valeur devant remplacer la valeur de NoSinueuse.
sur le click d'un bouton j'ai codé
A priori cela me paraissait simple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 int IntNoSinueuse = 0; int.TryParse(NoSinueuseTextBox.Text, out IntNoSinueuse); if (LigneRow.NoSinueuse != IntNoSinueuse) //Pour s'assurer de ne pas changer le RowState si la valeur ne change pas. LigneRow.NoSinueuse = IntNoSinueuse;
Pourtant, lorsque je mets "2" dans la TextBox, la IntNoSinueuse est bien égale à 2, mais la ligne LigneRow.NoSinueuse = IntNoSinueuse; génère l'erreurCela me laisse un peu perplexe, surtout que le LigneRow.NoSinueuse et le IntNoSinueuse sont en int tous les 2.Impossible d'effectuer un cast d'un objet de type 'System.Int32' en type 'System.String'.
L'erreur est générée lors du passage sur le set du code ci-dessous dans le Designer.cs du DataSet
Je ne comprend vraiment pas pourquoi cette erreur est générée, et donc je ne vois pas comment résoudre ce problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] public int NoSinueuse { get { try { return ((int)(this[this.tableLigne.NoSinueuseColumn])); } catch (global::System.InvalidCastException e) { throw new global::System.Data.StrongTypingException("The value for column \'NoSinueuse\' in table \'Ligne\' is DBNull.", e); } } set { this[this.tableLigne.NoSinueuseColumn] = value; } }
Merci de vos z'avis z'avisés
Partager