2 votes

Gérer les valeurs nulles dans une grille de données

Net (c#) et lorsque j'essaie de lier mes données à la grille de données, elle affiche des valeurs nulles dans les colonnes (parce qu'il n'y a pas de données dans certaines colonnes). Mais je veux afficher 0 au lieu de null dans la même colonne.

comment c'est possible ? Existe-t-il une expression ?

quelque chose comme NullDisplayText="0" ? ??

Gracias

2voto

Imran Rizvi Points 2886

Il n'y a pas d'expression de ce type dans DataGrid, vous pouvez écrire du code dans l'événement ItemDataBound et remplacer null par un texte personnalisé avant de lier les données à la cellule.

Si vous utilisez TemplateColumn et que vous liez des données à des contrôles web aspx, vous pouvez écrire une liaison côté serveur pour remplacer une valeur vide ou nulle par une valeur par défaut.

Champ du modèle

<asp:TextBox runat="server" Text='<%#DefaultVal(Eval("FieldName").ToString())% >' ID="txtBox1" ></asp:TextBox>

Propriété côté serveur

protected string DefaultVal(string val)
{
    return (val == null)?"0":val;
}

Pour GridView, il existe une propriété appelée NullDisplayText, voir le lien suivant pour plus de détails. http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.boundfield.nulldisplaytext.aspx

2voto

Deepesh Points 1721

Il est préférable de gérer les valeurs nulles dans les requêtes Sql afin que le retour du résultat ne contienne pas de valeurs nulles. Vous pouvez écrire une requête Sql pour traiter les valeurs nulles de cette manière

Sélectionnez isnull(Prix,0) de abc

1voto

mortb Points 4126

Vous pouvez modifier le sql pour convertir les valeurs NULL en zéros en utilisant COALESCE.

Par exemple :

SELECT COALESCE(potentialNullColumn, 0) FROM table

J'espère que cela vous aidera !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X