Я использую редактируемую сетку Telerik MVC Batch с видами бритвы ASP.Net MVC3. В дополнение к тому, что сетка должна быть редактируемой, я также пытаюсь добавить столбец со ссылкой «Редактировать» (в идеале, с изображением ссылки), нажатие на которую приведет меня на страницу редактирования отдельной записи. Например -
@(Html.Telerik().Grid(Model)
.Name("BillersGrid")
.DataKeys(keys => keys.Add(o => o.id))
.ToolBar(commands =>
{
commands.Insert();
commands.SubmitChanges();
})
.DataBinding(databinding =>
{
databinding.Ajax()
.Select("SelectBatchEditing", "BillerAdmin")
.Update("SaveBatchEditing", "BillerAdmin", new { id = (string)ViewData["BillerSearchString"] });
}
)
.Columns(columns =>
{
columns.Command(commands => commands.Delete().ButtonType(GridButtonType.BareImage)).Width(10).Title("");
columns.Bound(o => o.id).Title("Edit").ClientTemplate("<a href='/BillerAdmin/EditBiller?id=<#=id#>'>Edit</a>");
columns.Bound(o => o.id).Hidden(true);
columns.Bound(o => o.CouponBillerName).Title("Coupon Biller Name").HtmlAttributes(new { style = "white-space:nowrap;" });
columns.Bound(o => o.PayeeRecipient).Title("Recipient").HtmlAttributes(new { style = "white-space:nowrap;" });
columns.Bound(o => o.PayeeAddress1).Title("Address 1").HtmlAttributes(new { style = "white-space:nowrap;" });
columns.Bound(o => o.PayeeAddress2).Title("Address 2").Width(100);
columns.Bound(o => o.PayeeCity).Title("City").HtmlAttributes(new { style = "white-space:nowrap;" });
columns.Bound(o => o.State).ClientTemplate("<#= State #>");
columns.Bound(o => o.PayeeZip).Title("Zip").Width(50);
columns.Bound(o => o.PayeeZipPlusFour).Title("Zip+4").Width(50);
columns.Bound(o => o.Category).ClientTemplate("<#= Category #>").HtmlAttributes(new { style = "white-space:nowrap;" });
columns.Bound(o => o.AccountNumberFormat).Title("Account Number Format").Width(50);
columns.Bound(o => o.CodeLineNumberFormat).Title("CodeLine Number Format").Width(50);
})
.Pageable(paging => paging.Position(GridPagerPosition.Bottom).Style(GridPagerStyles.NextPreviousAndNumeric).Total((int)ViewData["BillersCount"]).PageSize(50))
.EnableCustomBinding(true)
.Editable(editing => editing.Mode(GridEditMode.InCell))
.Sortable()
.ClientEvents(evt => evt.OnDataBinding("BillersGrid_onDataBinding"))
.KeyboardNavigation(config => config.EditOnTab(true))
.HtmlAttributes(new { style = "font-size:.9x cem;" })
)
Это работает. Но проблема в том, что сетка отображается с идентификатором (который является guid) при первом отображении. На странице «Правка» гиперссылка отображается правильно.
Может кто-нибудь мне помочь. Я хотел бы, чтобы сетка показывала ссылку «Редактировать» каждый раз. Эта ячейка должна быть недоступна для редактирования и должна быть гиперссылкой, переходящей в другое представление. Функциональность работает правильно. Проблема заключается в том, что идентификатор отображается при первом отображении.
Пожалуйста, помогите.
Спасибо,
SDD