使用Eval的if语句出现C#错误
本文关键字:错误 语句 Eval if 使用 | 更新日期: 2023-09-27 18:28:48
当我尝试做下面这样的事情时,我遇到了一个错误,
<% if (Eval("DescriptionShort") == "")
{ %>
There is no description for this winery
<%}
{ %>
<%# Eval("DescriptionShort") %>
<%}%>
我得到的错误是,
Eval()、XPath()和Bind()等数据绑定方法只能在数据绑定控件的上下文中使用
我能做这样的事吗?如果不能,我能用这个在代码后面做点什么吗?
SqlDataAdapter adDetail = new SqlDataAdapter("SELECT * FROM TBLWineries WHERE WineryShow = 'True' AND WineryRegionFK =" + Request["WineryRegionID"], conn);
DataSet dsDetail = new DataSet();
adDetail.Fill(dsDetail);
编辑
这是一个DataList,里面有一个表,我需要它来进行页面布局。接下来的两行代码显示了我如何填充DataList,
WineryListDL.DataSource = dsDetail;
WineryListDL.DataBind();
其他地方的人说我可以使用这个,它不会给出错误,也不会显示其他部分!如果"DescriptionShort"存在,它可以正常工作,但如果不存在,我就不会收到文本。
<%# Eval("DescriptionShort") == "" ? "There is no description for this winery" : Eval("DescriptionShort") %>
如果是的话,这是否可行,可能与"DescriptionShort"不为null或"??"有关???
干杯,
迈克。
您应该完全按照错误所说的操作-使用某种数据绑定控件,例如GridView
例如,将数据集绑定到GridView.DataSource
属性,并使用Eval函数为单元格提供值。
看看MSDN的这篇文章"数据绑定表达式概述"
下面是如何将GidView和SqlDataAdapter一起使用的示例:如何在Gridview 中编辑、更新、删除