【发布时间】:2009-06-12 01:19:29
【问题描述】:
我对这个有点难过。有人有想法么?我会尽量简明扼要地展示这个例子。
针对 SQL 2005 数据库创建 Silverlight 3.0 应用程序。使用 RIA 服务和实体框架进行数据访问。
我需要能够根据表格填充网格。但是,我的网格 UI 和我的表格结构是不同的。基本上我的网格需要将行变成列(如 PIVOT 表)。这是我的挑战/假设
- 直到运行时我才知道网格上有哪些列。
- Silverlight 3 仅支持绑定到属性
- Silverlight 3 不允许您向网格中添加行并手动填充数据。
- 众所周知,Silverlight 没有 System.Data(主要是 DataTable)命名空间
那么,我如何创建一个带有动态属性的对象,以便我可以绑定到网格。我的每一个想法(多维数组、哈希表等)都分崩离析 b/c SL 需要绑定一个属性,我无法手动添加/填充数据行,我无法弄清楚一种添加动态属性的方法。我看过一篇关于涉及链接列表的解决方案的文章,但我正在寻找更好的选择。它可能归结为制作一个特殊的“Cody Grid”,它将是一堆文本框/标签。确实可行,但我会失去一些用户期望的网格功能
我能想出的唯一解决方案是在 SQL 2005 中创建一个 PIVOT 表查询并使用基于该查询/视图的实体。 SQL 2008 会帮助我解决这个问题。我更愿意在 Silverlight 中执行此操作,但如果这是最后的手段,那就这样吧。如果我走 PIVOT 路线,如何在实体框架中实现不断变化的数据结构?
数据样本。
表格
名称日期值
科迪 1/1/09 15
科迪 1/2/09 18
迈克 2009 年 1 月 1 日
迈克 2009 年 1 月 8 日 77
网格 UI 应该是这样的
Name 1/1/09 1/2/09 1/3/09 .... 1/8/09
Cody 15 18 NULL NULL
Mike 20 NULL NULL 77
科迪
【问题讨论】:
标签: silverlight-3.0