Utiliser ”; Manipulation de la valeur nulle et affichage de 0 contre

Si dataitem est Null je veux montrer 0

 <asp:Label ID="Label18" Text='' runat="server"> 

Comment puis-je accomplir cela?

Vous pouvez également créer une méthode publique sur la page, puis appeler celle-ci depuis le code-in-front.

par exemple si vous utilisez C #:

 public ssortingng ProcessMyDataItem(object myValue) { if (myValue == null) { return "0 value"; } return myValue.ToSsortingng(); } 

Ensuite, l’étiquette dans le code-in-front sera quelque chose comme:

  

Désolé, je n’ai pas testé ce code, je ne peux donc pas garantir la syntaxe de ” <%# ProcessMyDataItem(Eval("item")) %> ” entièrement correct.

J’utilise ceci pour les valeurs de chaîne:

 <%#(String.IsNullOrEmpty(Eval("Data").ToString()) ? "0" : Eval("Data"))%> 

Vous pouvez également utiliser les valeurs suivantes pour les valeurs nullables:

 <%#(Eval("Data") == null ? "0" : Eval("Data"))%> 

Aussi, si vous utilisez .net 4.5 et supérieur, je vous suggère d’utiliser une liaison de données fortement typée :

   <%# Item.Title %>   

J’utilise ce qui suit pour VB.Net:

 <%# If(Eval("item").ToString() Is DBNull.Value, "0 value", Eval("item")) %> 

Cela devrait fonctionner aussi

 Eval("item") == null?"0": Eval("item"); 

De plus, vous pouvez utiliser (x = Eval (“item”) ?? 0) dans ce cas.

http://msdn.microsoft.com/en-us/library/ms173224.aspx

Je ne connais pas très bien ASP.NET, mais pouvez-vous utiliser l’opérateur ternaire?

http://en.wikipedia.org/wiki/Ternary_operation

Quelque chose comme: (x = Eval (“item”)) == Null? 0: x

essayez ce code, il pourrait être utile –

 <%# ((DataBinder.Eval(Container.DataItem,"ImageFilename").ToString()=="") ? "" :"")%> 

Essayez de remplacer <%# Eval("item") %> par <%# If(Eval("item"), "0 value") %> (ou <%# Eval("item") ?? "0 value" %> , en utilisant C #).

Utilisez IIF.

  

J’ai essayé ce code et cela fonctionne bien pour les situations nulles et vides:

 '<%# (Eval("item")=="" || Eval("item")==null) ? "0" : Eval("item")%>' 

Utilisé une version modifiée de la réponse de Jason:

 public ssortingng ProcessMyDataItem(object myValue) { if (myValue.ToSsortingng().Length < 1) { return "0 value"; } return myValue.ToString(); }