繁体   English   中英

如何使用asp.net mvc在webgrid中使用if条件

[英]how to use if condition in webgrid using asp.net mvc

我正在尝试基于asp.net mvc中的Web网格中的if条件显示链接。 如果记录超过结束日期,则不显示链接。

grid.Column("", format: (item =>
    {
        if (DateTime.Now > item.EndDate)
        {
            Html.ActionLink(
                "File ClAIM",
                "Edit",
                new { id = item.id },
                new { @class = "action-link" });
        }
        return false;
    }))

它在我的所有记录中都显示为false。任何帮助将不胜感激。

您需要通过以下方式使用三元运算符

grid.Column("", format: (item => { DateTime.Now > item.EndDate ? Html.ActionLink("File ClAIM", "Edit", new { id = item.id }, new { @class = "action-link" }) : String.Empty }))

您错过了Html.ActionLink(...)之前的return 由于return false不在else分支中,因此无论哪种情况都将执行它。 我在您的代码段中添加了一些格式设置。 这样,对您来说我的观点可能会更明显。

顺便说一句, false不是字符串。 尽管我不了解webgrid组件的详细信息,但我对代码的编译感到有些惊讶。 在其他情况下,您也想返回一个字符串。 string.Emptynull" " -只要您认为合适。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM