C# и ASP.NET MVC: Используя #if директиву в представлении

У меня есть символ условной компиляции, который я использую названный "ВЫПУСКОМ", на который я указал в свойствах своего проекта в Visual Studio. Я хочу, чтобы некоторый конкретный CSS был применен к элементам, когда символ ВЫПУСКА определяется, и я пытался сделать это от представления, но это, кажется, не работает.

Мой код представления похож на это (сократился немного в демонстрационных целях):

<% #if (RELEASE) %>
    <div class="releaseBanner">Banner text here</div>
<% #else %>
    <div class="debugBanner">Banner text here</div>
<% #endif %>

С этим кодом, и с набором символов ВЫПУСКА, 'еще' работает код, и я получаю отделение с debugBanner классом. Таким образом, это, кажется, не думает, что ВЫПУСК определяется. Стоит отметить, что мой фактический код C# в .cs файлах распознает ВЫПУСК и выполняет правильный код. Это - только представление, которое дает мне проблему.

У кого-либо есть понимание этого? Любая справка ценилась бы.Спасибо.

Разъяснение: Я должен был упомянуть, что это представление уже является частичным представлением, и я просто представлю его на страницах, где мне нужно оно. Поэтому эти баннеры будут на определенных страницах и не других. Таким образом, представляя его как частичное представление через:

Html.RenderPartial("BannerView");

это не работает.

46
задан MegaMatt 1 June 2010 в 15:46
поделиться

1 ответ

В вашей модели:

bool isRelease = false;

<% #if (RELEASE) %>
    isRelease = true;
<% #endif %>

В вашем представлении:

<% if (Model.isRelease) { %>
    <div class="releaseBanner">Banner text here</div>
<% } else { %>
    <div class="debugBanner">Banner text here</div>
<% } %>
18
ответ дан 26 November 2019 в 19:58
поделиться
Другие вопросы по тегам:

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