string.Format在内部if语句时无法在C#razor中工作

cfl*_*y24 1 c# asp.net asp.net-mvc razor asp.net-mvc-4

string.Format在剃刀视图中使用来格式化来自viewModel的项目.

当我像这样使用它时工作正常:

<td>
   <b>@string.Format("{0:c}", item.TotalCreditPaid)</b>
</td>
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试在if语句中使用它时,它不会在视图中显示任何内容:

      <td>
          <b>@if (item.AverageTimeToPay != null)
          {
            string.Format("{0} Days", item.AverageTimeToPay);
          }
          </b>
     </td>
Run Code Online (Sandbox Code Playgroud)

我穿过它,if被击中,item.AverageTimeToPay它的值为12,但它没有显示任何东西.

知道为什么会这样吗?谢谢!

hut*_*oid 5

您缺少@括号,而是将其更改为此.

  <td>
      @if (item.AverageTimeToPay != null)
      {
        <b>@(string.Format("{0} Days", item.AverageTimeToPay))</b>
      }
 </td>
Run Code Online (Sandbox Code Playgroud)