Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.


inline conditional statement on Eval

inline conditional statement on Eval

I am trying to test a dataitem for an empty string and display "N/A" if the string is empty, otherwise display the string. For example, I have tried this:


<%# Eval("code").ToString()=="" ? "N/A" : Eval("code") %> 

As suggested by numerous web searches. However, this does not work and produces an "Expression expected." error

Any ideas?

Web Development Manager

RE: inline conditional statement on Eval

Here is an example that I think may work:

However, my suggestion is to use the correct event depending on the object you are using (i.e. RowDataBound, ItemDataBound, etc.)
This code will make it more clear and easier to maintain.
Also, you can get the code done quicker than trying to figure this out and wasting time on what should be easy, but is not.

RE: inline conditional statement on Eval

Thanks for the reply. Still couldn't get that to work but have made a workaround for now.

In order to get the desired result I can display the string then add an asp:label that checks the length of the dataitem in the visible property:


<%#Eval("code").ToString() %>
<asp:Label runat="server" visible='<%#Eval("code").ToString().Length <=0 %>'>N/A</asp:Label> 

still no idea why the original method wouldn't work despite that being a tried and tested method for many others.

Web Development Manager

RE: inline conditional statement on Eval

I would just put the code in the correct event and do it in the code behind. It will make maintenance more clear and easy.
Just put a literal or label where you want the code and in the row or itemdatabound, set the text of the literal or label based on your needs.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!


Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close