Folks, yesterday after much reading and some experiments I discovered the
hard way that I cannot transfer large byte blobs using streams. I'm told the
size might reach about 20MB. My SAMS WCF book and some samples show how you
return a Stream and write in chunks. However (I think?!) that cannot be done
with a Silverlight client, and I found that the proxy generator converts the
Stream into a byte[].

 

I could use sockets, but my WCF service would have to be enhanced to have a
listener running in a thread. I don't want to make architectural changes
like this if I can avoid it.

 

What if I use a really pathetic bittorrent style approach and have a WCF
method that takes large files in chunks via repeated method calls and
reassembles them on the server side. The basic code would be simple, but
before I write something weird like that I thought I'd run it up the forum's
flagpole first.

 

I would need a little bit of infrastructure on the server side to maintain a
collection of incoming "torrents" and add the chunks to each one until it's
complete. I'd also need a simple timeout lease to allow me discard an
unfinished "torrent" if the client dies or leaves. I could probably knock
the whole thing up in a couple of hours, but should I?

 

Greg

Reply via email to