Razor将我的if语句输出为HTML

本文关键字:输出 HTML 语句 if 我的 Razor | 更新日期: 2023-09-27 18:15:16

所以我有一个剃刀,我用它来检查一个学习模块运行的月份和年份:

        @{  
                string liClass = "prl-4 prs-3";
                if(cssCount == 4){
                    liClass = "alpha prl-4 prs-3";
                }
                <li class="@liClass">
                <i class="icon-test"></i> 
                if(cYears.Count() > 1) {
                      if (cMonthDisplays.Count() > 1) {
                      @cMonthDisplays[0]<text>&nbsp;</text>@cYears[0] <text>/</text> @cMonthDisplays[1]<text>&nbsp;</text>@cYears[1]
                      } else {
                        @cMonthDisplay<text>&nbsp;</text>@cYears[0] <text>/</text> @cMonthDisplay<text>&nbsp;</text>@cYears[1]
                      }
                }
                else {
                      @cMonthDisplay<text>&nbsp;</text>@cYearDisplay
                }
                </li>
                cssCount++;
            }

我的剃刀的第一部分工作正常,当if语句发现计数与4匹配时,li的类被替换。

然而,在初始'if'语句工作后,第二个if语句输出到我的页面作为HTML。

然后显示在我的页面上:

      if(cYears.Count() > 1) {
            if (cMonthDisplays.Count() > 1) {
               March 2016 / September  2017 
             } 
             else { March, September 2016 / March, September  2017 } 
      } 
      else { March, September 2016, 2017 }

我有点卡住了,为什么我的if语句只显示第二个if语句。我可能遗漏了一些非常明显的东西-但任何帮助都会非常感激!

Razor将我的if语句输出为HTML

您应该在if之前添加@

@if(cYears.Count() > 1) {