Используя' <% # Оценка (“объект”) %>'; Обработка Нулевого значения и показ 0 против

Если dataitem Null Я хочу показать 0

<asp:Label ID="Label18" Text='<%# Eval("item") %>' runat="server"></asp:Label>

Как я могу выполнить это?

53
задан Muhammad Akhtar 14 January 2013 в 21:49
поделиться

4 ответа

Вы также можете создать публичный метод на странице, а затем вызвать его из кода на передней панели.

например, при использовании C#:

public string ProcessMyDataItem(object myValue)
{
  if (myValue == null)
  {
     return "0 value";
  }

  return myValue.ToString();
}

Тогда метка в коде in-front будет что-то вроде:

<asp:Label ID="Label18" Text='<%# ProcessMyDataItem(Eval("item")) %>' runat="server"></asp:Label>

Извините, не протестировал этот код, поэтому не могу гарантировать, что синтаксис "<%# ProcessMyDataItem(Eval("item")) %>" полностью корректен.

.
69
ответ дан 7 November 2019 в 08:24
поделиться

Я не очень хорошо знаю ASP.NET, но можно ли использовать тернарный оператор?

http://en.wikipedia.org/wiki/Ternary_operation

Что-то вроде того: (x=Eval("элемент")) == Null ? 0 : x

1
ответ дан 7 November 2019 в 08:24
поделиться

Здравствуйте, вот образец хрома Google, который отправляет текущий Сайт по электронной почте другу. Основная идея заключается в том, что вы хотите... в первую очередь он получает содержимое страницы (не interessting для вас)... после этого он получает URL (<-- хорошая часть)

Кроме того, это хороший рабочий пример кода, который я предпочитаю motstly, а не чтение Документов.

Можно найти здесь: Попробуйте заменить <%# Eval("элемент") %> на <%# If(Eval("элемент"), "0 значение") %> (или <%# Eval("элемент") ??? "0 значение" %>, при использовании C#).

.
0
ответ дан 7 November 2019 в 08:24
поделиться

Более того, вы можете использовать (x = eval ("item") ?? 0) в этом случае.

http://msdn.microsoft.com/en-us/library/ms173224.aspx

3
ответ дан 7 November 2019 в 08:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: