Как использовать escape-кавычки в cshtml - PullRequest
0 голосов
/ 10 декабря 2018

Как избежать кавычек внутри .cshtml файла.Я использовал бритву MVC.Я использую If inside foreach

@for (int i = 1; i <= 4; i++)
{
    <div @(i == 1 ? "class=\"tab-pane active\"" : "class=tab-pane")>
    </div>
}

Я использую косую черту, чтобы избежать кавычек, но не работает хорошо.

Результат <div class="&quot;tab-pane" active&quot;=""></div>

Я хочу получить результат, если для 1 будет <div class="tab-pane active"></div>

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Просто используйте троичный оператор внутри атрибута class, нет необходимости повторять его дважды:

@for (int i = 1; i <= 4; i++)
{
    <div class="@(i == 1 ? "tab-pane active" : "tab-pane")">
    </div>
}

Ссылка: Как использовать троичный оператор в бритве (в частности, в атрибутах HTML)?

0 голосов
/ 10 декабря 2018

Вы действительно должны просто вставить / распечатать / кодировать то, что вам нужно, а не пытаться избежать всего.Также меньше кода, вам не нужно повторять классы .. nice и DRY .

@for (int i = 1; i <= 4; i++)
{
  var active = i == 1 ? "active" : string.Empty;
  <div class="tab-pane @active">
  </div>
}

И это гораздо более читабельно и легко поддерживается.

Вывод:

  <div class="tab-pane active">
  </div>
  <div class="tab-pane ">
  </div>
  <div class="tab-pane ">
  </div>
  <div class="tab-pane ">
  </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...