nopcommerce:telerik网格链接项找不到参数(Id未定义)

时间:2014-04-14 13:27:57

标签: asp.net-mvc telerik telerik-grid telerik-mvc nopcommerce

我在nop.Admin项目中添加了新菜单,新控制器和新视图。我想要的是在nop.Admin中绑定Rad网格内的编辑链接。我的代码是。

            @(Html.Telerik().Grid<Nop.Admin.Models.AuthorizeWorkshops.RegistrationModel>()
              .Name("ProductRegistration-grid")
              .Columns(columns =>
              {                      
                  columns.Bound(x => x.RegisteredProducts.Make);
                  columns.Bound(x => x.RegisteredProducts.Model);
                  columns.Bound(x => x.RegisteredProducts.Year);
                  columns.Bound(x => x.RegisteredProducts.CC);
                  columns.Bound(x => x.RegisteredProducts.AuthorizedWorkshop);
                  columns.Bound(x => x.RegisteredProducts.PurchaseDate);
                  columns.Bound(x => x.RegisteredProducts.InoiceNo);
                  columns.Bound(x => x.RegisteredProducts.SerialNo);

                  columns.Bound(x => x.RegisteredProducts.Id)
                    .Template(x => Html.ActionLink(T("Admin.Common.Edit").Text, "Edit", new { Id = x.RegisteredProducts.Id }))
                    .ClientTemplate("<a href=\"Edit/<#= Id #>\">" + T("Admin.Common.Edit").Text + "</a>")
                    .Width(50)
                    .Centered()
                    .HeaderTemplate(T("Admin.Common.Edit").Text)
                    .Filterable(false);
              })
              .Pageable(settings => settings.PageSize(gridPageSize).Position(GridPagerPosition.Both))
              .DataBinding(dataBinding => dataBinding.Ajax().Select("List", "ProductRegistration"))
              .EnableCustomBinding(true))

**如果我排除以下代码**

                  columns.Bound(x => x.RegisteredProducts.Id)
                    .Template(x => Html.ActionLink(T("Admin.Common.Edit").Text, "Edit", new { Id = x.RegisteredProducts.Id }))
                    .ClientTemplate("<a href=\"Edit/<#= Id #>\">" + T("Admin.Common.Edit").Text + "</a>")
                    .Width(50)
                    .Centered()
                    .HeaderTemplate(T("Admin.Common.Edit").Text)

在视图中的Rad Grid工作正常,并返回所有记录。 **但如果我继续使用相同的** ,我会收到以下错误。

Uncaught ReferenceError: Id is not defined

请帮我解决这个问题。感谢。

1 个答案:

答案 0 :(得分:0)

花了我5个小时来确定幕后的问题。我正在使用返回多个模型的模型。所以我刚刚更换了

.ClientTemplate("<a href=\"Edit/<#= Id #>\">" + T("Admin.Common.Edit").Text + "</a>")

** WITH **

.ClientTemplate("<a href=\"Edit/<#= RegisteredProducts.Id #>\">" + T("Admin.Common.Edit").Text + "</a>")

并且有效。

感谢上帝。