Kendo UI 网格 - 如何绑定到子属性

2023-12-15

如何在 Kendo 网格的模型设置中将列/字段绑定到 json 结果的子属性(在 JavaScript 中)?例如,我希望网格包含以下列:FName、LName、Street 和 Address。基本上我想展平 Web 服务返回的层次结构。

剑道设置

fields: {
    FName: { type: "string" },
    LName: { type: "string"  },
    // How to map to child properties below?
    Street: { field: "Address.Street" },    // this is wrong             
    City: { field: "Address.City" }         // this is wrong
}

JSON

{
   "FName": "William",
   "LName ": "Shakespeare",            
   "Address":
          {
          "Address": "123 Street Ln",
          "City": "Philadelphia"
          }
}

你不这样做。您需要创建一个类“模型”来展平数据图。您将能够在模型构建期间使用延迟加载。通过控制器将此模型发送到视图,或者将其附加到发送到视图的更大的视图模型(只是模型的模型,而不是 MVVM)。然后将其绑定到网格。

但是,您会更乐意使用 Ajax 加载与 JSON 相同的模型,这就是我认为您正在尝试做的事情。

Model

public class ContactModel
{
    public string FName { get; set; }
    public string LName { get; set; }
    public string Address { get; set; }
    public string City { get; set; }

    public ContactModel()
    {}
    public ContactModel(Contact contact) // IContact is better if you have Interfaces
    {
        FName = contact.FName;
        LName = contact.LName;
        Address = contact.Address.Address;
        City = contact.Address.City;
    }

    // Neat Linq trick to convert database query results directly to Model
    public static IList<ContactModel> FlattenToThis(IList<Contact> contacts)
    {
        return contacts.Select(contact => new ContactModel(contact)).ToList();
    }
}

控制器

public JsonResult ReadContacts([DataSourceRequest]DataSourceRequest request)
{
    var contacts = _contactsDataProvider.Read(); // Your database call, etc.
    DataSourceResult result = ContactModel.FlattenToThis(contacts).ToDataSourceResult(request);
    return Json(result, JsonRequestBehavior.AllowGet);
}

但我认为威尔根本没能到达费城。 ;)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kendo UI 网格 - 如何绑定到子属性 的相关文章

  • Kendo Ui 数据源添加功能无法正常工作

    我定义了一个 Kendo 数据源 如下所示 它正在填充 ListView 中的值 var datasourceAppList new kendo data DataSource transport create function optio
  • kendo ui 取消树视图放置

    我有一个 TreeView 一旦用户将项目放到所需的位置 它会显示一个对话框并要求确认 如果用户选择取消 我还如何取消项目的放置 以便它返回到其原始位置 我当前的代码如下但不起作用 var newDiv document createEle
  • 自定义 Ajax 绑定无法正常工作

    我有以下自定义 Ajax 绑定代码 即使它显示第一页的数据 也会存在以下问题 The request Sorts在 Orders Read 方法中作为 NULL 出现 The request PageSizeOrders Read 方法中的
  • Javascript 和 C# 舍入地狱

    如您所知 由于天才舍入规则C 我们得到以下值 decimal d 2 155M var r Math Round d 2 2 16 decimal d 2 145M var r Math Round d 2 2 14 现在在客户端Javas
  • 模板内的 MVC 助手

    我正在尝试在模板中使用 kendo MVC 助手 远程模板文件加载如下 http docs kendoui c om howto load templates external files remote templates http doc
  • 使用 asp.net MVC 包装器在 Kendo UI 网格中设置日期时间格式

    我想构建一个格式为日期 dd MM yyyy 的 Kendo UI 网格 但是 我发现的所有与此相关的问题都已通过代码解决格式 0 d 所以 我尝试过像下面的代码 GridBoundColumnBuilder
  • 获取剑道网格中的点击事件

    我正在尝试获取 Kendo Grid 的单击事件 以便我可以将内容绑定到 Shift 和 Ctrl 单击 我无法使用 Kendo 提供的固有多选功能 因为它不支持拖放 当我在 dataBound 事件之后创建函数时 我的函数会在单击时被调用
  • 在剑道网格中显示动态图像

    我想在剑道网格中填充动态图像 我正在获取 json 数据 我有以下代码 var grid timeSegmentGrid kendoGrid var icon dataSource transport read function optio
  • 是否可以为 Kendo DatePicker(日历)设置方向?

    我在表单底部有一个日历输入 当用户单击它时 日历会在输入创建滚动条的下方弹出 有什么方法可以设置 DatePicker 打开的方向吗 例如 左 右 上 这是我的代码 dpBirthDate kendoDatePicker Thanks 是和
  • Kendo 模块和 RequireJS (r.js) 表现不佳。 (加载时出错)

    我在用Kendo UI版本2013 1 514 and RequireJS r js版本2 1 6 我的项目在标准下完美运行RequireJS按需加载 但是 当我尝试使用优化器时 任何 Kendo 都不会加载 包括其中任何一个都会引起著名和
  • Kendo ASP.NET MVC 帮助器 Grid 泛型类

    我有以下困境 我正在尝试在部分视图内创建一个 Kendo UI 网格 该网格将与不同类型的对象一起使用 并且可以支持删除或创建等操作 该对象看起来像这样 public class GridViewModel public Type Obje
  • 无法将数据绑定到 Kendo Scheduler

    我已经在视图中显示了这个 Kendo Scheduler 但没有任何数据 视图上的调度程序 Html Kendo Scheduler
  • kendo ui:grid - 将页面设置在网格的顶部和底部

    有一种简单的情况无法找到解决方案 Kendo UI 仅在底部实现网格分页 我试图让它在顶部显示寻呼机 但它变得无法点击 我认为我的克隆部分是错误的 但不知道如何修复它 预先感谢各位 这是脚本和jsp的一部分
  • Kendo UI 日历多选

    您好 有没有办法让 kendodatepicker 允许多选 那么选择多个日期并让它们全部突出显示吗 更新 08 2016 你可以用我的plugin https www npmjs com package kendo multi date
  • Kendo 刷新 (DropDownList.refresh()) 不起作用错误未定义

    我试图在另一个 DropDownList 更改后刷新下拉列表 但 Refresh 方法未定义错误正在升级 我尝试再次读取数据源 它显示它正在加载 但数据仍然相同 帮助解决这个问题请 Code DropDownList1 change fun
  • 禁用 CSS 规则

    有什么办法可以禁用 CSS 规则吗 我问是因为我使用的是 Kendo UI 他们的规则非常全面 例如 k grid td styles 然而 如果我把我的桌子放在他们的桌子里面 它的风格也会类似 所以它的影响太大 需要删除 更换 我不想手动
  • Kendo UI 和 Angular - $scope 中没有小部件

    我使用 Kendo UI 版本 2014 2 716 和 AngularJS 版本 1 2 27 并使用指令创建了一个网格 div div div div
  • 如何制作饼图聚合数据源?

    Using 适用于 ASP NET MVC 的 Kendo UI 完整版 http www kendoui com 版本 2013 3 1119 2013年11月20日 如果我有这段代码 status chart kendoChart da
  • Kendo Angular 多选设置选定值

    我将 Kendo 多重选择与 Angular Kendo 指令和远程数据源一起使用 我试图在应用程序启动时设置所选项目 但没有成功 谁能帮帮我吗 请参阅此处的代码 JS Bin http jsbin com OkukInIc 1 edit
  • Kendo DataSource:如何在获取之前设置过滤器而不发送两个http请求

    环境 剑道版本 2013 1 319 数据源 productsDataSource new kendo data DataSource type odata transport read http www mydomain com odat

随机推荐

  • 累积和的条件计数数据框 - 循环列

    我试图根据每个值的符号在数据帧内重置来计算累积和 这个想法是对每一列分别进行相同的练习 例如 假设我有以下数据框 df pd DataFrame A 1 1 1 1 1 1 1 1 1 1 1 1 B 1 1 1 1 1 1 1 1 1 1
  • Flutter(Dart):渲染引起的异常/RenderFlex溢出

    我遇到 Flutter Dart RenderFlex 像素溢出问题 渲染库的一个例外 如何管理或应用滚动功能到我的应用程序页面视图 并避免 Flutter 的渲染异常 并显示以下消息 RenderFlex 底部溢出了 28 个像素 如果您
  • 如何编写单个 LINQ to XML 查询来迭代所有子元素以及子元素的所有属性?

    我正在开发 asp net 移动应用程序 我使用 XML 作为数据库 我正在 net 中使用 LINQ to XML 查询 XML 以访问所需的元素和属性 我的 XML 文件中有以下部分
  • Vim 中 Tab 键 == 4 个空格并在大括号后自动缩进

    我该如何制作vi Vim永远不要使用制表符 将空格转换为制表符 不好 使制表符键 4 个空格 并在大括号块后自动缩进代码 例如Emacs does 另外 如何保存这些设置 这样我就不必再次输入它们 我见过与此相关的其他问题 但它似乎总是与我
  • Jmeter是否支持客户端javascript

    Jmeter是否支持客户端javascript 我能够录制脚本 但重播日志没有显示任何内容 JMeter 不是一个浏览器 它是一个负载生成工具 它可以产生 HTTP 流量 但它实际上并不解析 执行加载页面附带的 JavaScript 如果您
  • 在 Switch Case 中声明 UI 对象

    我读过有关开关盒范围的内容 跳转标签等等 但是 SO 这里建议的解决方案似乎意味着添加花括号可以避免这个问题 然而 这似乎仍然不起作用 switch objectType case label label is an integer con
  • 删除NiFi中的空属性

    因为这个问题仍未解决 我有一个EvaluateJsonPath有时输出带有空字符串的属性的处理器 是否有直接的方法从流程文件中删除属性 我尝试使用UpdateAttributes处理器 但它只能根据匹配属性名称进行删除 我需要匹配属性的值
  • 类的事件监听器?

    我有一个引用 Id 的 EventListener 它运行良好 唯一的问题是我至少有十几个需要引用此 EventListener 的地方 所以我不想有十几个完全相同但具有不同 Id 的脚本 有没有办法让 EventListener 引用一个
  • 如何在谷歌地图上显示浮动视图,就像谷歌地图中的搜索栏一样

    我已经成功实现了地图 但我找不到任何与此相关的帮助 这是我对谷歌地图片段的实现 SupportMapFragment fragment private GoogleMap map FragmentManager fm Override pu
  • 将 UTF8 转换为 std::wstring 的跨平台方法 [重复]

    这个问题在这里已经有答案了 可能的重复 STL 中 UTF8 与宽字符的转换 我知道如何使用将 UTF8 转换为 std wstring多字节到宽字符 std wstring utf8to16 const char src std vect
  • 8086中的物理地址是如何产生的?

    In the 8086架构中 内存空间大小为 1 MiB 并分为每个最大 64 KiB 的逻辑段 即它有20地址线因此使用以下方法 数据段寄存器左移4位然后添加到偏移寄存器 我的问题是 尽管所有寄存器都只有 16 位 但我们如何进行移位操作
  • 刷新服务引用会更新app.config

    每次我对 WS 进行更改并更新 Visual Studio 中的引用时 VS 都会使用其他不必要的信息覆盖我的 app config 因此 当我之后启动客户端时 我收到此错误 处理标头时发现错误 代码生成器所做的更改是remove每个绑定中
  • Xpage, createForm=false 禁用链接上的 SSJS 事件?

    我问这个只是为了在这里澄清 我不小心将 createForm 属性设置为 false 然后我期望一个链接事件应该打开另一个页面 但不再起作用 这是 SSJS 事件的预期行为吗 当您禁用表单创建时在链接中 正如 Per 提到的 所有事件都需要
  • Windows 窗体 - 单击按钮将数据添加到列表视图[重复]

    这个问题在这里已经有答案了 我有一个 winform 应用程序 点击后会填充一些数据 button UpdateTS 如何添加存储在变量中的数据 单击该按钮后可用 我想要在列表视图中显示的数据存储在一个名为的数组中 results butt
  • 公开声明中“iostat”参数的含义是什么?

    我对打开文件中使用 iostat 参数感到困惑 如上所述 当 open 命令成功时 iostat 的值为 0 open unit 99 file vel zcor22 txt status old iostat ierr err 100 1
  • 结构体动态数组和函数调用 f(const struct_type *const data[])

    以下代码警告类型不兼容 解决此代码的正确方法是什么 thanks typedef struct a struct struct type void f const struct type const data unsigned n void
  • 如何使用(由 mod 重写驱动)漂亮的 URL 读取 $_GET 变量

    各位程序员大家好 我第一次使用很好的 URL 但我不太明白为什么我无法从脚本中读取 oAuth 响应 这是我的设置 htaccess RewriteCond REQUEST FILENAME f RewriteCond REQUEST FI
  • C# Winforms 线程:调用封闭表单

    下面的代码演示了我的困境 该代码创建一个后台线程来处理某些内容 然后使用结果调用 UI 线程 如果后台线程在窗体关闭后调用窗体上的 Invoke 则可能会引发异常 它在调用 Invoke 之前检查 IsHandleCreated 但表单可能
  • Python 多处理傻瓜教程 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我试图找到一个简单的示例 清楚地显示单个任务被划分为多处理 坦率地说 许多示例都过于复杂 从而使流程更难以使用 有人愿意分享他们的突破性样本或例子吗
  • Kendo UI 网格 - 如何绑定到子属性

    如何在 Kendo 网格的模型设置中将列 字段绑定到 json 结果的子属性 在 JavaScript 中 例如 我希望网格包含以下列 FName LName Street 和 Address 基本上我想展平 Web 服务返回的层次结构 剑