2012-04-16 77 views
0

我想弄清楚如何通过.net分组使用淘汰赛foreach数据绑定进行迭代。我的问题是,我不知道如何一旦它被序列化到JSON遍历IGroupings的净集...淘汰赛foreach数据绑定在分组数据

在服务器端,我有一个.NET对象,看起来像这样:

public class BookingResult 
{ 
    public IEnumerable<IGrouping<DateTime, BookingLeg>> Grouped { get; set; } 
} 

public class BookingLeg 
{ 
    public string DepartureDate { get; set; } 
    public string ArrivalDate { get; set; } 
    public string Name { get; set; } 

    public DateTime StartDate { get; set; } 
} 

而且我通过他们的StartDate分组BookingLeg实体的集合创建Grouped财产。然后我使用JSON返回BookingResult实体。这是为Grouped财产所产生的JSON看起来像这样(我折叠和展开节点给你产生什么更好的概述):

enter image description here

我想怎么做我的客户端是创建一个模板并绑定到敲除foreach绑定输出键作为列表标题,然后为该键中的每个值输出值的一些细节。这将是这个样子:

01/01/2012 
    - Transfer 
    - Flight 
    - Transfer 
03/01/2012 
    - Transfer 
    - Cruise 

... 

我试图做到这一点,像这样:

<ul data-role="listview" data-bind="foreach: Grouped"> 
    <li data-role="list-divider"><span data-bind="text: Key"></span></li> 
    <li data-bind="text: Name, click: $parent.getBookingLegDetail"></li> 
</ul> 

我知道上面是错误的,因为一个 - 关键不存在分组。

有谁知道我该如何创建一个模板来正确输出列表中的分组的键和值?顺便说一句我也在这里使用jQuery的手机(因此数据角色的东西)。

谢谢!

James

回答

1

JavaScriptSerializer不处理IGrouping对象中的Key属性。有关类似问题和可能的解决方案,请参阅this问题。

+0

我决定走一种带有关键和价值的新型产品。我无法弄清楚如何迭代该值!要发布另一个问题......虽然谢谢!我快到了! – 2012-04-16 17:06:27