XSD colonne int erreur cast
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é
Code:
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; |
A priori cela me paraissait simple.
Pourtant, lorsque je mets "2" dans la TextBox, la IntNoSinueuse est bien égale à 2, mais la ligne LigneRow.NoSinueuse = IntNoSinueuse; génère l'erreur
Citation:
Impossible d'effectuer un cast d'un objet de type 'System.Int32' en type 'System.String'.
Cela me laisse un peu perplexe, surtout que le LigneRow.NoSinueuse et le IntNoSinueuse sont en int tous les 2.
L'erreur est générée lors du passage sur le set du code ci-dessous dans le Designer.cs du DataSet
Code:
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;
}
} |
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.
Merci de vos z'avis z'avisés