Не HTML кодировать строку в бритве asp.net - PullRequest
1 голос
/ 20 февраля 2011

Я следую коду на здесь в синтаксисе бритвы.Я в конечном итоге с этим:

Я попробовал это:

@{Html.Grid("basic")
    .setCaption("Basic Grid")
    .addColumn(new Column("JobId")
        .setLabel("Id"))
    .addColumn(new Column("Title"))
    .addColumn(new Column("CreatedDate"))
    .setUrl(Url.Action("Jobs"))
    .setAutoWidth(true)
    .setRowNum(10)
    .setRowList(new int[]{10,15,20,50})
    .setViewRecords(true)
    .setPager("pager");}

и ничего не отображает.У меня было это, начиная с @, и он кодировал данные.

Ответы [ 2 ]

3 голосов
/ 20 февраля 2011

Попробуйте:

@(new MvcHtmlString(Html.Grid("basic")
.setCaption("Basic Grid")
.addColumn(new Column("JobId")
    .setLabel("Id"))
.addColumn(new Column("Title"))
.addColumn(new Column("CreatedDate"))
.setUrl(Url.Action("Jobs"))
.setAutoWidth(true)
.setRowNum(10)
.setRowList(new int[]{10,15,20,50})
.setViewRecords(true)
.setPager("pager").ToString())

Сетка должна вернуть MvcHtmlString (или просто IHtmlString), если вы не хотите, чтобы она была закодирована.Лучшее решение - написать метод расширения с именем ToMvcHtmlString(), который возвращает правильное значение.Тогда вы просто используете Html.Grid().ToMvcHtmlString().Это лучше, чем создавать объекты в поле зрения.

0 голосов
/ 03 августа 2011

Попробуйте это:

@{ var grid = Html.Grid("basic")
.setCaption("Basic Grid")
.addColumn(new Column("JobId")
    .setLabel("Id"))
.addColumn(new Column("Title"))
.addColumn(new Column("CreatedDate"))
.setUrl(Url.Action("Jobs"))
.setAutoWidth(true)
.setRowNum(10)
.setRowList(new int[]{10,15,20,50})
.setViewRecords(true)
.setPager("pager");
}

Html.Raw(grid.ToString());

Лучше то, что grid.ToString () возвращает IHtmlString, поэтому вам не нужно Html.Raw it

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...