Я получаю сообщение об ошибке, когда я пытаюсь сделать что-то вроде этого ниже,C# Ошибка с, если заявление с помощью Eval
<% if (Eval("DescriptionShort") == "")
{ %>
There is no description for this winery
<%}
{ %>
<%# Eval("DescriptionShort") %>
<%}%>
ошибка я получаю,
Databinding методы, такие как 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», не являющимся нулевым или «» ???
Cheers,
Mike.
Благодаря Asktomsk, iv'e сделал правку выше. –
Возможно, ваша новая проблема описана здесь http://stackoverflow.com/questions/5224264/eval-check-for-dbnull-doesnt-work – asktomsk