C# 如何在KendoUITreeView中加载以下HTTP响应?

C# 如何在KendoUITreeView中加载以下HTTP响应?,c#,javascript,jquery,asp.net,kendo-ui,C#,Javascript,Jquery,Asp.net,Kendo Ui,它只加载父节点,但我想使每个节点的通知成为树的子项 应该是这样的: 测试120 -3298 -983932 测试2 40 -ABCD -983932我已经解决了这个问题 以下是脚本代码: var notificationTypes = new kendo.data.HierarchicalDataSource({ transport: { read: { url: "http:

它只加载父节点,但我想使每个节点的通知成为树的子项

应该是这样的:

测试120 -3298

-983932

测试2 40 -ABCD


-983932我已经解决了这个问题

以下是脚本代码:

var notificationTypes = new kendo.data.HierarchicalDataSource({
                transport: {
                    read: {
                        url: "http://..."
                    }
                },
                schema: {
                    model: {
                        notificationType: "notificationType",
                        notifications: "notifications",
                        children: "notifications",
                        string: "string",
                        hasChildren: true
                    }
                }
            });

            $("#treeview").kendoTreeView({
                dataSource: notificationTypes,
                checkboxes: {
                    checkChildren: true
                },
                dataTextField: ["notificationType", "notifications"]
            });
下面是API:

<script language="javascript" type="text/javascript">
            $(function()
            {
                var data = new kendo.data.HierarchicalDataSource({
                    transport: {
                        read: {
                            url: "../api/notifications/byuserid/10078261",
                            contentType: "application/json"
                        }
                    },
                    schema: {
                        model: {
                            children: "notifications"
                        }
                    }
                });

                $("#treeview").kendoTreeView({
                    dataSource: data,
                    checkboxes: {
                        checkChildren: true
                    },
                    dataTextField: ["notificationType", "NotificationDesc"]
                });
            });
        </script>

我认为您缺少模式中的子对象。你试过使用KendoUI服务器包装器吗?让生活变得更轻松,你能给我举个例子吗?我现在没有例子,因为我正在旅行,无法访问代码!如果你有帐户,你可以访问KendoUI网站并下载最新的二进制文件。当我访问代码库时,我将尝试发布一些示例代码。
<script language="javascript" type="text/javascript">
            $(function()
            {
                var data = new kendo.data.HierarchicalDataSource({
                    transport: {
                        read: {
                            url: "../api/notifications/byuserid/10078261",
                            contentType: "application/json"
                        }
                    },
                    schema: {
                        model: {
                            children: "notifications"
                        }
                    }
                });

                $("#treeview").kendoTreeView({
                    dataSource: data,
                    checkboxes: {
                        checkChildren: true
                    },
                    dataTextField: ["notificationType", "NotificationDesc"]
                });
            });
        </script>
namespace X.Controllers
{
    public class NotificationsController : ApiController
    {
        public List<Node> getNotifications(int id)
        {
            var bo = new HomeBO();
            var list = bo.GetNotificationsForUser(id);
            var notificationTreeNodes = (from GBLNotifications n in list
                                         where n.NotificationCount != 0
                                         select new NotificationTreeNode(n)).ToList();
            var li = notificationTreeNodes.Select(no => new Node
            {
                    notificationType = no.NotificationNode.NotificationType + " " + "(" + no.NotificationNode.NotificationCount + ")", notifications = bo.GetNotificationsForUser(id, no.NotificationNode.NotificationTypeId).Cast<GBLNotifications>().Select(item => new Notification
                    {
                            ID = item.NotificationId, NotificationDesc = item.NotificationDescription
                    }).ToList()
            }).ToList();
            return li;
        }
    }

    public class Node
    {
        public List<Notification> notifications;

        public string notificationType
        {
            get;
            set;
        }
    }

    public class Notification
    {
        public int ID
        {
            get;
            set;
        }

        public string NotificationDesc
        {
            get;
            set;
        }
    }
}