我有一张像这样的表:
我想使用EF,它将使用一个存储过程,它将返回一个unpivot结果集。但问题是,我如何对其进行建模,以便我可以在RIA服务中使用它来将数据推送到客户端。我正在寻找像这样的东西
public class RegionModel {
public string Name { get; set; }
public List<string> Quarter { get; set; }
public List<int> Sales { get; set; }
}
同样会有QuarterModel
。根据用户选择,我可以返回适当的绑定集合。目前,我们通过在客户端创建动态类来解决这个问题。但有兴趣知道是否有可能在没有客户端代码的情况下实现这一点,并且可以利用EF和SQL Server。
答案 0 :(得分:7)
答案:
透视功能可以将对象集合转换为展平原始层次结构的新对象集合。 在以下示例中,Pivot扩展方法用于转换集合,如下所示:
使用以下链接:
LINQ Extensions Library (Pivot Extensions)
使用以下行来旋转数据:
contacts.Pivot(X => X.Phones, X => X.PhoneType, X => string.Concat("(", X.AreaCode, ") ", X.PhoneNumber), true)
答案 1 :(得分:3)
@ cadrell0是正确的,它是视图侧代码。我能够使用通用动态对象实现这一点。我最近在博客上发表了关于@ http://csharprambling.wordpress.com/2011/11/23/expandoobject-in-silverlight-take-2/
的文章