我有一个条件编译符号,我使用名为“RELEASE”,我在Visual Studio中的项目属性中指出。我想在定义RELEASE符号时将一些特定的CSS应用于元素,并且我试图从视图中执行该操作,但似乎并不奏效。C#和ASP.NET MVC:在视图中使用#if指令
我的观点的代码如下所示(简称有点用于演示目的):
<% #if (RELEASE) %>
<div class="releaseBanner">Banner text here</div>
<% #else %>
<div class="debugBanner">Banner text here</div>
<% #endif %>
有了这个代码,并与RELEASE符号集,“别人的代码运行,我得到一个div与debugBanner类。所以它似乎并不认为RELEASE是定义的。值得注意的是,我的.cs文件中的实际C#代码识别RELEASE并运行正确的代码。这只是给我提出问题的观点。
有没有人有这方面的见解?任何帮助,将不胜感激。谢谢。
澄清:我应该提到这个视图已经是局部视图,我只是简单地在需要它的页面中呈现它。这是因为这些横幅将在某些页面上,而不是其他页面上。因此,即使通过渲染它作为一个局部视图时:
Html.RenderPartial("BannerView");
它不工作。
为什么你不创建一个html助手方法,并把你的代码放在那里? 然后你可以做if和做一个渲染partial来保留HTML – Rippo 2010-06-01 15:43:21
不太熟悉html helper方法。我确实澄清了我的问题,以表明这是我正在使用的部分视图。你能否详细说明一下你的建议? – 2010-06-01 15:47:57
预处理器指令仅适用于编译时工作... @DeveloperArt有一个优雅的解决方案... – xandercoded 2010-06-01 15:53:03