How to use Eval() with a column name that contains a dot(.)?
use
<%# ((DataRowView)Container.DataItem)["slno."] %>
Alternatively use
<%# DataBinder.Eval (Container.DataItem, "slno.") %>
For MSDN reference see http://msdn.microsoft.com/en-us/library/4hx47hfe.aspx
EDIT - Another option:
<%# DataBinder.GetPropertyValue(Container.DataItem, "slno.") %>
EDIT 2 - as per comments:
AFAIK Eval
handles the string as an expression which it evaluates using some rules - these rules have special handling for the dot...
GetPropertyValue
OTOH does not apply those rules (which means it is NOT a full replacement for Eval
AFAIK) thus having the ability to handle cases where the dot handling of Eval
leads to problems (like in this case).