2

我有一个WebGrid我试图在 MVC4 razor 视图中定义的。为了便于阅读,我想使用多行定义列格式。以下作品,格式为一行:

@grid.GetHtml(
    columns: grid.Columns(
        grid.Column(
            header: "Address",
            format: (item) => @: @item.Address.Street1 @item.Address.Street2<br />@item.Address.City, @item.Address.State @item.Address.Zip
            )
        )
    )

下面给出了; expected第一个尾括号和Invalid expression term ')'其他尾括号的解析器错误:

@grid.GetHtml(
    columns: grid.Columns(
        grid.Column(
            header: "Address",
            format: (item) => @: @item.Address.Street1 @item.Address.Street2<br />
                              @: @item.Address.City, @item.Address.State @item.Address.Zip
            )
        )
    )

阅读ScottGu 的博客后,我认为这是正确的多行语法。我尝试了花括号、分号和括号的各种位置,但我找不到让解析器满意的语法。

4

2 回答 2

0

在玩了一会儿之后,我能够使用<text>标签找到一个工作版本。

@grid.GetHtml(
    columns: grid.Columns(
        grid.Column(
            header: "Address",
            format: @<text>@item.Address.Street1 @item.Address.Street2<br />
                           @item.Address.City, @item.Address.State @item.Address.Zip</text>
                )))
于 2013-05-16T18:01:47.533 回答
0

也许它与多行 lambda 有关。

像这样的东西怎么样:

@grid.GetHtml(
columns: grid.Columns(
    grid.Column(
        header: "Address",
        format: (item) => 
                        {
                          @: @item.Address.Street1 @item.Address.Street2<br />
                          @: @item.Address.City, @item.Address.State @item.Address.Zip
                        }
        )
    )
)
于 2013-05-16T18:03:33.847 回答