Как бороться с явно несовпадающими тегами HTML в Razor Engine? - PullRequest
2 голосов
/ 30 марта 2011

Вот случай:

@{
    if (A)
    {
        <div>
            <span>bla</span>
      <!-- This is where it breaks! -->
    }
    else
    {
            <span>bla</span>
    }
    if(B)
    {
        </div>
    }
}

Поскольку <div> не закрывается внутри того же условия, в котором он открыт, Razor Engine считает, что оператор else является HTML-разметкой.Что я мог бы сделать в подобных ситуациях, чтобы заставить его работать должным образом?

1 Ответ

2 голосов
/ 30 марта 2011

Проблема не соответствует HTML тегам.Самый простой способ - использовать директиву @: parser

@{
    bool A = true;
    bool B = true;

    if (A)
    {
        @:<div>
            <span>bla</span>
      <!-- This is where it breaks! -->
    }
    else
    {
            <span>bla</span>
    }
    if(B) {
        @:</div>
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...