我有一个应用程序,它将使用WCF为客户端提供各种数据块。但是,由于将要返回的某些数据集的大小(那是因为客户端应用程序需要在列表中显示大量对象,而不是因为我只是在设计上懒惰) m达到邮件大小限制。我期望如此,并计划实现数据分页/响应流(我相信Pablo Cibraro曾经就此写过一篇文章)。但是,我看过一些演示,这些演示使WCF数据服务看起来非常酷。我只是无法使其适合我。我没有数据库后端,也没有托管在IIS中。我已经获得了一些处理基本对象的示例,但是一旦我将其插入应用程序中的对象,它就无法正常工作-我收到了请求错误,它似乎被设计为无用的-它只是建议检查服务器日志,而不建议我怎么做。我怀疑这是假设我在托管IIS,并且IIS可能会记录其托管的数据服务的消息。我正在尝试使用的一个相当简单的类是一条日志消息(我希望诊断仪表板式客户端能够远程向我显示最近24小时的服务器日志):public class Message{ public string Source { get; set; } public MessageType Type { get; set; } public DateTime Timestamp { get; set; } public string MessageText { get; set; } public override string ToString() { return string.Format("[{0}] [{1}] [{2}] {3}", Timestamp.ToString(), Source, Type, MessageText); }}使用此类会产生错误,而如果我将其指向某个类,我会将该类作为测试进行模拟(如Pablo在此处的演示:http://msdn.microsoft.com/en-us/data/cc745968.aspx所示),那么它将可以正常工作。关于这是为什么的任何想法,或者如何从错误中获取有用的信息?以下是我的服务定义和用于暴露要返回的集合的IQueryable 实现的类(目前,我只完成了Log,类型为List<Message>)public class DataServiceFacade{ public IQueryable<Message> Log { get { return Program.Log.AsQueryable(); } }}public class DataServiceHost : DataService<DataServiceFacade>{ public static void InitializeService(IDataServiceConfiguration config) { config.UseVerboseErrors = true; config.SetEntitySetAccessRule("*", EntitySetRights.All); config.SetServiceOperationAccessRule("*", ServiceOperationRights.All); }}现在,这可能很简单,但我已经花了太多时间将头撞在这堵特殊的砖墙上。我希望数据服务能够为我处理诸如分页之类的事情,并为我提供一种很好的灵活格式,该格式可以在不同平台上工作。另外,如果无法使用数据服务,我将不胜感激有关数据分页或流式传输集合的任何指针。谢谢 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 听起来您似乎只看到一般的“ Response Error”消息。要查看该消息的详细信息,您需要将行为修改为“ includeExceptionDetailInFaults”。您可以在配置文件中更改行为。<services> <service name="DataServiceHost" behaviorConfiguration="DataServiceBehavior"> <endpoint name="DataServiceHost" address="" binding="webHttpBinding" contract="System.Data.Services.IRequestHandler" /> </service></services><behaviors> <serviceBehaviors> <behavior name="DataServiceBehavior"> <serviceDebug includeExceptionDetailInFaults="true"/> </behavior> </serviceBehaviors></behaviors> (adsbygoogle = window.adsbygoogle || []).push({});