2

我想知道 Razor 上的这个 VB.NET 代码有什么问题。

@grid.GetHtml("table",
               columns:=New WebGridColumn() {grid.Column("RazonSocial", "Razón Social", canSort:=True),
                                              grid.Column("FechaInicioOp", "Fecha Inicio", Function(c) c.FechaInicioOp.ToShortDateString, canSort:=True),
                                              grid.Column("Direccion.Descripcion", "Dirección", canSort:=False),
                                              grid.Column("Direccion.Estado.Nombre", "Estado", canSort:=False),
                                              grid.Column("", "",
                                                          @@<p>
                                                              @Html.ActionLink("Configurar", "Edit", New With {.IdCondominio = item("IdCondominio")}, New With {.class = "ico edit"})
                                                          </p>
                                                          )})

当我调试应用程序时,我得到这个:“BC30205:预期语句结束。”

我只是想把这个 C# 代码转换成 VB.NET

@grid.GetHtml(
fillEmptyRows: true,
alternatingRowStyle: "fila-alternativa",
headerStyle: "encabezado-grid",
footerStyle: "pie-grid",
mode: WebGridPagerModes.All,
firstText: "<< Primera",
previousText: "< Anterior",
nextText: "Siguiente >",
lastText: "Última >>",
columns: new[] {
    grid.Column("Nombre", canSort: false),
    grid.Column("Apellidos"),
    grid.Column("EMail", 
                 format: @<a href="mailto:@item.Email">@item.Email</a>
    ),
    grid.Column("FechaNacimiento", 
                header: "Fecha de nacimiento",
                format: p=>p.FechaNacimiento.ToShortDateString()
    ),
    grid.Column("NumeroDeHijos", 
                header: "Número de hijos",
                style: "a-la-derecha"
    ),
    grid.Column("",
                header: "Acciones",
                format: @<text>

@Html.ActionLink("Editar", "Edit", new { id = item.IdPersona }) | @Html.ActionLink("Eliminar", "Delete", new { id = item.IdPersona }) </text>)
})

但我不知道出了什么问题,或者是否缺少某些东西。

4

1 回答 1

1

我认为您的翻译不太适合列集合。

如果我更改以下内容:

columns:=New WebGridColumn()

读书:

columns:=grid.Columns(

然后在语句的末尾再添加一个右括号')',那么它对我有用。

修改后的整个语句如下:

@grid.GetHtml("table",
               columns:=grid.Columns(
               {
                   grid.Column("RazonSocial", "Razón Social", canSort:=True),
                   grid.Column("FechaInicioOp", "Fecha Inicio", Function(c) c.FechaInicioOp.ToShortDateString, canSort:=True),
                   grid.Column("Direccion.Descripcion", "Dirección", canSort:=False),
                   grid.Column("Direccion.Estado.Nombre", "Estado", canSort:=False),
                   grid.Column("", "",
                   @@<p>
                   @Html.ActionLink("Configurar", "Edit", New With {.IdCondominio = item("IdCondominio")}, New With {.class = "ico edit"})
                   </p>
                   )}))

希望有帮助。

于 2012-12-13T01:45:54.560 回答