后台绑定: Repeater1.DataSource = from a in ascon.Records where a.RNo == rno select new { a.RNo, a.Charge } Repeater1.DataBind(); 前台: <%#Eval("Charge")%> 大家说的方法,我都试过了,报一样的错误,而且检查过数据库,此字段有数据。
Repeater1.DataSource = from a in ascon.Records where a.RNo == rno select new { RNo= a.RNo, Charge= a.Charge } <%# string.IsNullOrEmpty(Eval("Charge"))?string.Empty:Eval("Charge").ToString()%>
从新生成一下试试呢?
后台:
加一个方法
public String getName(object charge)
{
return charge.ToString();
}
Repeater1.DataSource = from a in ascon.Records
where a.RNo == rno
select new
{
a.RNo,
a.Charge
}
Repeater1.DataBind();
前台:
<%#Eval("Charge")%>
大家说的方法,我都试过了,报一样的错误,而且检查过数据库,此字段有数据。
报一样的错误“无法将类型为“System.Decimal”的对象强制转换为类型“System.String”。 ”
where a.RNo == rno
select new
{
RNo= a.RNo,
Charge= a.Charge
}
<%# string.IsNullOrEmpty(Eval("Charge"))?string.Empty:Eval("Charge").ToString()%>
如果转换对象是null的话不应该报"未将对象设置引用到实例么"。
楼主后台断点追一下,看看dataSource里的数据有木有问题。
<%# Convert.ToDecimal(Eval("Charge")).toString()%>
试试