0

私は剣道 MVC グリッドを使用しており、セルの 1 つにドロップダウン リストが必要です。ここに私のコードがあります:

    @(Html.Kendo().Grid<RMS.Admin.ViewModel>()
  .Name("ResourceGrid")
  .Columns(columns =>
  {
      columns.Bound(c => c.ResourceName);
      columns.Bound(c => c.Descritption);
      columns.Bound(c => c.ResourceType).ClientTemplate("#=ResourceType#");
      columns.Bound(c => c.Approved);
      columns.Bound(c => c.IsEnabled);
      columns.Bound(c => c.Data).Width(220);
      columns.Command(command =>
      {
          command.Edit();
          command.Destroy();
      }).Width(172).Title("Edit/Delete");
  })
  .ToolBar(toolbar => toolbar.Create())
  .Editable(editable => editable.Mode(GridEditMode.InLine))
  .Scrollable()
  .Sortable()
      .HtmlAttributes(new { style = "height:800px" })
  .Pageable(pageable => pageable
      .Refresh(true)
      .PageSizes(true)
      .ButtonCount(5))
      .ClientDetailTemplateId("template")
  .DataSource(dataSource => dataSource
      .Ajax()
      .Model(model =>
      {
          model.Id(s => s.ResourceId);
          model.Field(p => p.ResourceType).DefaultValue(ViewData["defResourceType"] as RMS.Admin.ViewModel.ResourceTypeId);
      })
                .Create(update => update.Action("CreateResource", "Home", new { resourceTypeId = "#=ResourceType.Id#" }))
                .Read(read => read.Action("ReadResource", "Home"))
                .Update(update => update.Action("UpdateResource", "Home"))
                .Destroy(destroy => destroy.Action("RemoveResource", "Home"))

    )
        .Events(events => events.DataBound("dataBound"))
  )

問題は、clienttemplate が何であるかがわからないため、どうすればよいかわかりません。clienttemplate でリソース タイプをバインドすると、新しいレコードをグリッドに追加できず、次のエラーが表示されます: Uncaught ReferenceError: ResourceType が定義されていません

clienttemplate を削除すると、レコードを追加できますが、保存しようとすると、ResourceType の ID が見つからないと表示されます。

4

1 に答える 1