if语句总是打印文本

时间:2017-03-17 12:01:50

标签: c# razor

我需要在我的问题下打印所有代码

如果@store.GuaranteePolicy中有数据打印所有<tr>。如果没有数据,则不打印任何内容。

无论@store.GuaranteePolicy中是否有数据,然后&#34;付款&#34;总是打印,但为什么?

我说如果(store.GuaranteePolicy不同于null,则打印)

if语句正在使用:

  • 如果store.GuaranteePolicy中有数据,则所有内容都打印完美
  • 如果store.GuaranteePolicy中没有数据,则不会打印文本, BUT 会打印 Payment:字样。那么整个<tr>即使不是真的也会打印出来?

    @if (store.GuaranteePolicy != null) { 
    <tr>
        <th class="small-12 large-6 columns first">
            <table>
                <tr>
                    <th width="300">
                        <p class="text-left small-text-left"><strong>Payment:</strong></p>
                    </th>
                </tr>
            </table>
        </th>
        <th class="small-12 large-6 columns last">
            <table>
                <tr>
                    <th width="300">
                        <p class="text-left small-text-left">
                            <span>@store.GuaranteePolicy</span>
                        </p>
                    </th>
                    <th class="expander"></th>
                </tr>
            </table>
        </th>
    </tr>
    }
    

1 个答案:

答案 0 :(得分:2)

如果GuaranteePolicy是一个集合,请尝试:

@if(store.GuaranteePolicy != null && store.GuaranteePolicy.Count > 0)
{

}

if string:

@if(!string.IsNullOrWhiteSpace(store.GuaranteePolicy))
{

}

依旧......