Объединение строк с ASP.NET MVC3 Razor

#asp.net-mvc-3 #razor #string-concatenation

#asp.net-mvc-3 #razor #объединение строк

Вопрос:

я пытаюсь объединить строку в asp.net mvc 3 razor и я получаю небольшую проблему с sintax с моим cshtml.

я хочу сгенерировать идентификатор для моих флажков в операторе foreach, и мои флажки должны начинаться с «chk», и что для отмены назначения поля с идентификатором, что-то вроде этого:

 <input type="checkbox" id="chk @obj.field" />
  

но или, например, результат для атрибута id таков: id=»chk 8″

как я могу просто получить результат для чего-то вроде «chk8»?

Ответ №1:

Просто поместите свою переменную рядом с префиксом:

 <input type="checkbox" id="chk@(obj.field)" />
  

Ответ №2:

Попробуйте

 <input type="checkbox" id="@("chk"   obj.field)" />
  

или

 <input type="checkbox" id="chk@obj.field" />
  

Ответ №3:

<input type="checkbox" id="chk@(obj.field)" /> должно сработать.

Самый прямой и понятный способ добавления префикса в суффикс.

 @("PREFIX "   obj.field   " SUFFIX")
  

Ответ №4:

<input type="checkbox" id="chk@(obj.field)" /> должно сработать.

Ответ №5:

Лучший способ объединить любую переменную C # в представлении rozer с помощью string.Формат

 id="@string.Format("{0}_Title", _Id)" // Apend after
id="@string.Format("Title_{0}", _Id)" // Apend before
id="@string.Format("Title_{0}_Title", _Id)" // Apend Middle