Wcf 友好的页面列表

Wcf 友好的页面列表,wcf,Wcf,我们一直在使用各种版本的,但是这些页面列表不支持Wcf。它们不会序列化。有没有人有一个好方法可以通过Wcf获取分页数据?(包括数据源的TotalRecords等属性。)我们制定了一个解决方案,将当前页面列表简化为更可序列化、更适合我们的解决方案。我们没有创建自定义列表/集合,而是创建了一个包含该列表/集合的类 以前,当页面列表在客户端反序列化时,我们会丢失它的自定义属性。它仍然拥有列表中的所有项,但缺少属性 这是基于特洛伊·古德的代码,我相信这是基于一些未发布的微软MVC代码。更多信息可在此处找

我们一直在使用各种版本的,但是这些页面列表不支持Wcf。它们不会序列化。有没有人有一个好方法可以通过Wcf获取分页数据?(包括数据源的TotalRecords等属性。)

我们制定了一个解决方案,将当前页面列表简化为更可序列化、更适合我们的解决方案。我们没有创建自定义列表/集合,而是创建了一个包含该列表/集合的类

以前,当页面列表在客户端反序列化时,我们会丢失它的自定义属性。它仍然拥有列表中的所有项,但缺少属性

这是基于特洛伊·古德的代码,我相信这是基于一些未发布的微软MVC代码。更多信息可在此处找到:

公共类页面列表:IPagedList
{
公共页面列表()
{
}
公共页面列表(IEnumerable源、int pageIndex、int pageSize)
:this(source==null?new List().AsQueryable():source.AsQueryable(),pageIndex,pageSize)
{
}
专用页面列表(IQueryable源、int-pageIndex、int-pageSize)
{
TotalRecords=source.Count();
//将项目添加到内部列表
如果(TotalRecords>0)
如果(pageIndex==0)
Data=source.Take(pageSize.ToList();
其他的
Data=source.Skip((pageIndex)*pageSize.Take(pageSize.ToList();
}
公共整数TotalRecords{get;set;}
公共IEnumerable数据{get;set;}
}
然后通过以下扩展进行实际实施:

public static PagedList<T> ToPagedList<T>(this IEnumerable<T> source, int pageIndex, int pageSize)
{
    return new PagedList<T>(source, pageIndex, pageSize);
}
publicstaticpagedlisttopagedlist(此IEnumerable源代码,intpageindex,intpagesize)
{
返回新的页面列表(源、页面索引、页面大小);
}

我们制定了一个解决方案,将当前的页面列表简化为更可序列化、更适合我们的解决方案。我们没有创建自定义列表/集合,而是创建了一个包含该列表/集合的类

以前,当页面列表在客户端反序列化时,我们会丢失它的自定义属性。它仍然拥有列表中的所有项,但缺少属性

这是基于特洛伊·古德的代码,我相信这是基于一些未发布的微软MVC代码。更多信息可在此处找到:

公共类页面列表:IPagedList
{
公共页面列表()
{
}
公共页面列表(IEnumerable源、int pageIndex、int pageSize)
:this(source==null?new List().AsQueryable():source.AsQueryable(),pageIndex,pageSize)
{
}
专用页面列表(IQueryable源、int-pageIndex、int-pageSize)
{
TotalRecords=source.Count();
//将项目添加到内部列表
如果(TotalRecords>0)
如果(pageIndex==0)
Data=source.Take(pageSize.ToList();
其他的
Data=source.Skip((pageIndex)*pageSize.Take(pageSize.ToList();
}
公共整数TotalRecords{get;set;}
公共IEnumerable数据{get;set;}
}
然后通过以下扩展进行实际实施:

public static PagedList<T> ToPagedList<T>(this IEnumerable<T> source, int pageIndex, int pageSize)
{
    return new PagedList<T>(source, pageIndex, pageSize);
}
publicstaticpagedlisttopagedlist(此IEnumerable源代码,intpageindex,intpagesize)
{
返回新的页面列表(源、页面索引、页面大小);
}

我一直试图使用您的解决方案中的代码序列化客户端上我的WCF服务的IPagedList结果,但没有成功,您能帮我吗?我不确定创建一个新问题来深入解释问题是否理想。我一直在尝试使用您的解决方案中的代码来序列化客户端上我的WCF服务的IPagedList结果,但没有成功,您能帮我吗?我不确定创建一个新问题来深入解释问题是否是我的理想选择。