Mam symbol warunkowej kompilacji, którego używam, zwany "RELEASE", który wskazałem we właściwościach mojego projektu w Visual Studio. Chcę, aby niektóre elementy CSS zostały zastosowane do elementów, gdy zdefiniowano symbol RELEASE, i próbowałem to zrobić z widoku, ale wydaje się, że nie działa.C# i ASP.NET MVC: Używanie dyrektywy #if w widoku
Mój kod widoku wygląda następująco (skrócony nieco do celów demonstracyjnych):
<% #if (RELEASE) %>
<div class="releaseBanner">Banner text here</div>
<% #else %>
<div class="debugBanner">Banner text here</div>
<% #endif %>
Z tym kodem oraz z zestawem RELEASE instrumentu, „inny” kod działa i jestem coraz div z klasą debugBanner. Wydaje się więc, że nie zdefiniowano RELEASE. Warto zauważyć, że mój aktualny kod C# w plikach .cs rozpoznaje RELEASE i uruchamia poprawny kod. To tylko widok sprawia mi problem.
Czy ktoś ma wgląd w to? Każda pomoc będzie doceniona. Dzięki.
Wyjaśnienie: Powinienem wspomnieć, że ten pogląd jest już częściowy widok, a ja po prostu uczynić go na stronach gdzie jej potrzebują. To dlatego, że te banery będą na niektórych stronach, a nie na innych. Więc nawet przy renderowaniu go jako częściowy widok poprzez:
Html.RenderPartial("BannerView");
nie działa.
Dlaczego nie utworzysz metody helpera HTML i nie wstawisz tam swojego kodu? Następnie można wykonać renderowanie częściowe i częściowe, aby zachować kod HTML – Rippo
Niezbyt dobrze znane metody html helper. Zrobiłem wyjaśnienie mojego pytania, aby wskazać, że jest to częściowy widok, nad którym pracuję. Czy możesz nieco rozwinąć swoją sugestię? –
dyrektywy preprocesora działają tylko w czasie kompilacji ... @DeveloperArt ma eleganckie rozwiązanie ... – xandercoded