IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

DataSet typé et string null


Sujet :

C#

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 249
    Par défaut DataSet typé et string null
    Salut,

    Dans une table "Ligne" d'un dataset typé j'ai une colonne "Centre" (string dont la valeur AllowDBNull est à True avec la DefaultValue à "<DBNull>").

    Toutefois, dans le code suivant, drLigne.Centre me retourne
    'drLigne.Centre' threw an exception of type System.Data.StrongTypingException'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
                public void LigneRowChangingEvent(object sender, DataRowChangeEventArgs e)
                {
                    DataSetParcelles.LigneRow drLigne = (DataSetParcelles.LigneRow)e.Row;
                    if (e.Action == DataRowAction.Change)
                    {
                        if (string.IsNullOrEmpty(drLigne.Centre))
                            e.Row.RowError = "";
                        else
                        {
                          ...
    Je ne comprend pas le problème puisque la colonne "Centre" peut (et doit pouvoir) être null.

    Merci de vos z'avis z'avisés.

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 249
    Par défaut
    Évidemment, il faut mettre le NullValue de la colonne à "(Null)" et non "(Throw Exception)", qui est la valeur par défaut et qui ne se modifie pas automatiquement lorsqu'on met le "AllowDBNull" à True.

    Il fallait le savoir et je ne connaissais pas cette variable.

    Je post la réponse, au cas où d'autres auraient le même problème.

    Merci à ceux qui ont pris le temps de lire ma question afin de m'aider.

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Une autre option est de tester si la valeur est null :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (drLigne.IsCentreNull())
        ...

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 249
    Par défaut
    Merci de cette réponse supplémentaire Tomlev. Je ne savais pas. Je pensais que comme null était refusé (créait un erreur), le IsCentreNull aurait fait de même.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ADO.NET][C#]Comment forcer Fill correct de DataSet typé ?
    Par Manralf dans le forum Accès aux données
    Réponses: 23
    Dernier message: 21/02/2006, 09h50
  2. Fichier typé et string
    Par nmathon dans le forum Langage
    Réponses: 4
    Dernier message: 13/01/2006, 15h55
  3. transformer un buffer non typé en string
    Par bjl dans le forum Langage
    Réponses: 6
    Dernier message: 07/01/2006, 12h14
  4. [VS2005][C#] Delete sur un Dataset typé
    Par Xno dans le forum Windows Forms
    Réponses: 3
    Dernier message: 19/09/2005, 18h13
  5. [C#] Récup champ IMAGE SQLServer avec un DataSet Typé
    Par SoaB dans le forum Windows Forms
    Réponses: 3
    Dernier message: 27/07/2005, 14h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo