webgrid中的语法复杂列

时间:2013-07-25 11:53:57

标签: asp.net-mvc webgrid

我想要完成的专栏有3个可能的结果。

  • paidDate不为空 - >只显示付款日期

  • paidDate为空且dueDate为<现在 - >显示:paidDate /“with reference”/ reference +添加一个类“green”

  • paidDate为空,dueDate为>现在 - >显示:paidDate /“with reference”/ reference +添加一个类“red”

我现在使用的代码无法识别'item',我可能也有一些语法错误。我应该如何使用WebGrid

在剃刀页面内构建这些if结构

Codesample

grid.Column("", "To be paid before", 
                    (item) =>   if(item.paidDate != null)
                                {
                                    string(item.paidDate);
                                }
                                else{
                                    if(item.dueDate < @DateTime.Now)
                                    {
                                        /*CLASS RED*/
                                        String.Format("{0}\br Met referentie: \br {1}", item.dueDate, item.reference);
                                    }
                                    else
                                    {
                                        /*CLASS GREEN*/
                                        String.Format("{0}\br Met referentie: \br {1}", item.dueDate, item.reference); 
                                    }),

1 个答案:

答案 0 :(得分:0)

这应该对你有用

  

var grid = new WebGrid(来源:Model.Modelname,rowsPerPage:10,   canSort:false);

                            @grid.GetHtml(
                                           tableStyle: "GridActionStyle",
                                      htmlAttributes: new { id = "grdid" },
                                      headerStyle: "headerStyle",
                                      alternatingRowStyle: "alt",
                                    columns: grid.Columns(
                                    grid.Column(header: "To be paid before", format: (item) => paidDate != null ?  string(item.paidDate) :  String.Format("{0}\br Met referentie: \br {1}", item.dueDate, item.reference) : String.Format("{0}\br Met referentie: \br {1}", item.dueDate, item.reference) )
                                  )) }
                        }