我想用telerik网格构建一个模板,该模板由其他页面作为局部视图调用 . 像这样的模板代码:

@model IEnumerable<object>
 @using System.Collections;
 @using System.Collections.Generic;
@using System.Reflection;

@{
ViewBag.Title = "UserView2";
}

<div>
@{Html.Telerik().Grid(Model)
      .Name("UserConfiguration")
      .DataKeys(keys => keys.Add(o => o.GetType().GetProperty("ConfigurationItemId").GetValue(o)))
      .Columns(
      columns =>
      {


          Type t = Model.GetType().GetGenericArguments().FirstOrDefault();
          foreach (var prop in t.GetProperties())
          {

                  columns.Bound(prop.PropertyType, prop.Name);

          }

          columns.Command(commands => commands.Edit()).Width(100);

      }
      )
      .DataBinding(
      dataBinding => dataBinding.Server()
      .Update("UpdateUser", "Configuration")
      )
        .Pageable(paging => paging.PageSize(20))
        .Sortable()
        .Scrollable(o => o.Height(500))
        .Filterable()
        .Resizable(resizing => resizing.Columns(true))
        .Render();        
}

另一个视图页面调用模板视图,如下所示:@ Html.Partial(“UserView2”,Model.UserList)

当我运行它时,页面成功打开并成功显示所有数据 . 所以我认为通过反映获取列名称和列数据可以很好地工作 . 但是当我点击“编辑”按钮时,它会抛出异常:

模板只能用于字段访问,属性访问,单维数组索引或单参数自定义索引器表达式 .

谁能帮我解决这个问题?