使用WCF RIA在Silverlight 4中进行服务器端动态排序和分页

时间:2011-10-24 12:26:40

标签: silverlight-4.0 wcf-ria-services

由于数据量巨大,我们的SL4应用程序因速度变慢而遇到问题。为了解决这个问题,我们决定对服务器端进行分页和排序。

数据库结构:

  • 客户表是(customerID,CustomerLabel,personId)
  • 人员表是(personId,FirstName)
  • Datagrid有(CustomerLabel,FirstName)

服务器端的分页一切正常,在尝试排序时,我可以使用以下方法轻松排序“CustomerLabel”:

IEnumerable<Customer> source = this.ObjectContext.Customers.Include("Person"); 

 source = source.OrderByDescending<Customer, object>(p => GetKeySelector(p, propertyName));

private static object GetKeySelector(Customer p, string propertyName)
{
    PropertyInfo propertyInfo = target.GetType().GetProperty(propertyName);
    return propertyInfo.GetValue(target, null);
}

问题: 而propertyName是datagrid中的“Person.FirstName”。 “propertyInfo”为空。

我希望有人能帮助我。

1 个答案:

答案 0 :(得分:0)

我不确定我理解你为什么不使用内置功能。这篇文章是否涵盖了你想要做的事情?

WCF RIA Services DomainCollectionView