как я могу ограничить количество символов, отображаемых для html.encode?подстрока на html.encode
<%= Html.Encode(item.LastName.Substring(1,30))%>
ошибка: указатель и длина должны относиться к местоположению внутри строки.
как я могу ограничить количество символов, отображаемых для html.encode?подстрока на html.encode
<%= Html.Encode(item.LastName.Substring(1,30))%>
ошибка: указатель и длина должны относиться к местоположению внутри строки.
Вам нужно проверить длину строк больше 30, в противном случае вы указываете длину, которая упадет с конца строки ... (Я также изменил индекс начала на 0, если вы не сделали значит оставить свой первый символ)
<%= Html.Encode(item.LastName.Substring(0,
item.LastName.Length > 30 ? 30 : item.LastName.Length))%>
Вы пропустили закрывающую скобку. ;) –
Спасибо, исправлено .. –
<%= Html.Encode(item.LastName.Substring(0, item.LastName.Length > 30 ? 30 : item.LastName.Length))%>
Если вы хотите проверить нуль, сделать это вместо того, чтобы:
<%= Html.Encode(
item.LastName == null ? string.Empty :
item.LastName.Substring(0, item.LastName.Length > 30 ? 30 : item.LastName.Length))%>
Индексы основаны на 0, а .Length - 1. > = в этом случае работать не будет. Используйте> вместо этого. –
А, да. Спасибо. Исправлена. –
Спасибо всем за ответы. Простите меня, но что, если строка равна нулю? – dmarkez
вы также могли бы сделать что-то вроде
<%= Html.Encode(item.LastName.Substring(0, Math.Min(item.LastName.Length, 30)) %>
сэкономить байты
Мы не автоматический синтаксис текстмаркеров, чтобы определить, какой язык он – kolypto