无法在mvc视图剃刀中循环

时间:2016-02-17 11:37:01

标签: c# asp.net-mvc

我无法在foreach循环中进行比较。这是下面的代码。

 @foreach (c3card.Dal.EDModel.tm_scrn_screen obj in tmgrp)
                    {
                        <tr>
                            <td>
                                @obj.scrn_name
                            </td>
                        </tr>


                        foreach (var item in ViewBag.perm_details)
                        {
                            if (@obj.scrn_id == @item.scrn_id)
                            {
                                <tr> <td>@item.perm_read</td></tr>
                                <tr> <td>@item.perm_write</td></tr>

                                if (@item.perm_read == true)
                                {
                                    <tr>
                                        <td>
                                            <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber1" checked="checked" />
                                        </td>
                                        }
                                        else
                                        {
                                        <td>
                                            <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber2" />
                                        </td>
                                    </tr>
                                }
                                if (@item.perm_write == true)
                                {
                                    <tr>
                                        <td>

                                            <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber1" checked="checked" />
                                        </td>
                                        }
                                        else
                                        {
                                        <td>
                                            <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber2" />
                                        </td>
                                    </tr>

                                }
                            }
                            else
                            {
                                <tr>
                                    <td>
                                        <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber1" />
                                    </td>
                                    <td>
                                        <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber2" />
                                    </td>
                                </tr>
                            }

                        }
                    }

此代码我无法使用if

进行比较
if (@item.perm_read == true)

我在上面显示@ item.perm_read的值,它返回true但是我比较它返回false。我可以知道为什么我无法比较吗? @ item.perm_read此代码将返回True

1 个答案:

答案 0 :(得分:0)

@foreach (c3card.Dal.EDModel.tm_scrn_screen obj in tmgrp)
{
<tr>
    <td>
        @obj.scrn_name
    </td>
</tr>


foreach (var item in ViewBag.perm_details)
{
    if (obj.scrn_id == @item.scrn_id)
    {
        <tr> <td>@item.perm_read</td></tr>
        <tr> <td>@item.perm_write</td></tr>

        if (item.perm_read == true)
        {
            <tr>
                <td>
                    <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber1" checked="checked" />
                </td>
                }
                else
                {
                <td>
                    <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber2" />
                </td>
            </tr>
        }
        if (item.perm_write == true)
        {
            <tr>
                <td>

                    <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber1" checked="checked" />
                </td>
                }
                else
                {
                <td>
                    <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber2" />
                </td>
            </tr>

        }
    }
    else
    {
        <tr>
            <td>
                <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber1" />
            </td>
            <td>
                <input type="checkbox" title="@obj.scrn_id" value="@obj.scrn_id" class="chkNumber2" />
            </td>
        </tr>
    }

}

}

你不应该使用if(@ item.perm_read == true)

必须是if(item.perm_read == true)你应该删除if in if语句

我仍然想知道,你必须尝试使用​​@if(item.perm_read == true)或if(item.perm_read == true),因为前面的语句有c#代码,它必须抛出错误。