我刚刚开始使用WCF数据服务,所以如果我没有意义,我会道歉。
我正在创建一个在线事件记录器/查看器。为此,我创建了一个ado.net实体数据模型和一个wcf数据服务。这很好用,我可以将事件添加到我的服务中。
我现在正在创建一个Windows客户端来浏览事件,我想知道是否有任何方法可以定期更新客户端的新事件。由于会有大量事件,因此每次刷新下载所有事件似乎都无效。
为了提供更多信息,我可以提及以下内容:
1. 软件A 中的自定义TraceListener类将事件发布到数据服务
2.由于wcf数据服务可以充当数据源,我选择采用这种方法而不是常规的Web服务
3.我目前正在WPF中创建客户端。
我期待着对这个问题的任何答案。
谢谢, 斯蒂芬
答案 0 :(得分:0)
WCF数据服务使用OData协议公开您的数据。这意味着您的客户端可以使用LINQ轻松查询您的数据服务。
根据客户端发送到服务器的请求,保留时间戳。下一个请求,仅在服务引用生成的代理上使用LINQ查询询问时间戳之后发生的事件。
var newEvents = myServiceRef.Events.Where(x => x.Timestamp >= lastTimestamp);
有关OData协议的更多信息,另请参阅http://www.odata.org/,有关使用LINQ访问WCF数据服务的更多信息,请参阅http://msdn.microsoft.com/en-us/library/ee622463.aspx。