• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 779
  • Last Modified:

Passing a very large collection via WCF streaming

Hi, guys!

I have to pass a huge number of some objects from my WCF service to a client. So, I configured my service to use strieamingresponse. The interface looks like:

[ServiceContract(Namespace = "http://www.xxx/SomeURI")]
public interface IHistoryRecoveryService
  Stream RecieveTrades (MarketFeed feed, TradeStamp start, TradeStamp end);		

Open in new window

But, all examples of streaming implementation are about passing some files (FileStream). Could anybody send me a link to a more complex example like my task?

I guess, I have to inherit "Stream" and implement my stream, retrieving my object from DB at calling Read.

Alexey Fedorov
Alexey Fedorov
  • 2
2 Solutions

Does this help?



Alexey FedorovSoftware developerAuthor Commented:
Thanks, Darren!

I implemented custom Stream as well as in the eaxample.

By the way: here (http://weblogs.asp.net/cibrax/archive/2008/06/10/streaming-large-content-with-wcf-and-deferred-execution.aspx) is an another approach.

But, it forces client to use XmlReader reader = message.GetReaderAtBodyContents(). I send my data  in binary format (serialized by ProtoBuff-Net).
Alexey FedorovSoftware developerAuthor Commented:
A different possible approach.

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now