<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.silverlight.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Programming with .NET - General</title><link>http://forums.silverlight.net/forums/17.aspx</link><description>General discussions around authoring Silverlight .NET applications.</description><dc:language>en</dc:language><generator>CommunityServer 2007 (Build: 20416.853)</generator><item><title>Re: Re: HttpWebRequest - receiving stream before it's completed. Should it work? ... yes</title><link>http://forums.silverlight.net/forums/thread/210747.aspx</link><pubDate>Thu, 23 Apr 2009 05:47:15 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:210747</guid><dc:creator>Zhi Chen</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/210747.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=210747</wfw:commentRss><description>&lt;p&gt;I think platond444&amp;#39;s reply is great - very informative!!&lt;/p&gt;
&lt;p&gt;I just discovered the initial buffering even I have the AllowReadStreamBuffering set to false.&lt;/p&gt;
&lt;p&gt;Is there any way to disable the initial buffering.&amp;nbsp;In my case I have the control over the server piece but writing 4K dummy data seems dum.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;thanks&lt;/p&gt;</description></item><item><title>Re: Re: HttpWebRequest - receiving stream before it's completed. Should it work? ... yes</title><link>http://forums.silverlight.net/forums/thread/92845.aspx</link><pubDate>Wed, 17 Sep 2008 17:34:44 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:92845</guid><dc:creator>cagdasgerede</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/92845.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=92845</wfw:commentRss><description>Thanks for this great information. I was looking for a way to read I made a couple of posts but nobody seemed to know about this feature. Thanks for pointing out &amp;quot;gotchas&amp;quot; too on your web page.
http://blog.lfdx.com/blogengine.net/post/HttpWebRequestAllowReadStreamBuffering3dfalse-Still-buffering-up-to-4kb!.aspx

According to my tests, this is true for Firefox 2, 3, and IE 6,7.

I would like to add that according to my experiments the first message you send is not received until the second messsage is received unless the first message size is 8KB or bigger. This is true for both Firefox and IE.</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work? ... yes</title><link>http://forums.silverlight.net/forums/thread/65399.aspx</link><pubDate>Thu, 26 Jun 2008 09:40:44 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:65399</guid><dc:creator>plafond444</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/65399.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=65399</wfw:commentRss><description>Yes, it does work!&amp;nbsp; (...but I still don&amp;#39;t know if it&amp;#39;s a bug or &amp;quot;by design&amp;quot;)&lt;br /&gt;&lt;br /&gt;So, what was wrong with my initial sample code? The first difference between the full framework and SL when calling &lt;span style="font-weight:bold;"&gt;BeginGetResponse &lt;/span&gt;is &lt;span style="font-weight:bold;"&gt;AllowReadStreamBuffering&lt;/span&gt;. As mentioned by Ola, &lt;span style="font-weight:bold;"&gt;HttpWebRequest.AllowReadStreamBuffering&lt;/span&gt; (new in Beta 2) needs to be set to false (default is true). That will work but there is a catch (the second difference between &amp;quot;full framework&amp;quot; and Silverlight for &lt;span style="font-weight:bold;"&gt;BeginGetResponse&lt;/span&gt;). Why was it waiting until the end of the stream to step in &lt;span style="font-weight:bold;"&gt;BeginGetResponse &lt;/span&gt;then? 4kb...(4096 I suppose).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;HttpWebRequest.AllowReadStreamBuffering&lt;/span&gt; set &lt;span style="font-weight:bold;"&gt;BrowserHttpWebRequest._allowBufering&lt;/span&gt; variable. This is used in &lt;span style="font-style:italic;"&gt;Completed&lt;/span&gt;, &lt;span style="font-style:italic;"&gt;Failed &lt;/span&gt;and &lt;span style="font-style:italic;"&gt;Progress &lt;/span&gt;methods.... &lt;span style="font-style:italic;"&gt;Progress &lt;/span&gt;is the one.... if _allowBuffering==true, call the Callback param... and this event is raised by &lt;span style="font-weight:bold;"&gt;InternalWebRequest&lt;/span&gt; object... nothing I can get more from there... I haven&amp;#39;t been able to find where, but I suppose that before &lt;span style="font-style:italic;"&gt;Progress &lt;/span&gt;can be called, there is a conditional statement that verifies that the stream is greater then 4kb....&lt;br /&gt;&lt;br /&gt;So in my sample code, I was writing 5 times &lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;status : XX&amp;quot;&lt;/font&gt;&lt;/font&gt; to the response stream (and was getting the result as one string instead of five small strings). The resulting string was far from 4kb (but this works in my app console).... If I send a 4kb chunk first, then the following &lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;status : XX&amp;quot;&lt;/font&gt;&lt;/font&gt; are received every 10 sec as expected.&lt;br /&gt;&lt;br /&gt;Obviously, sending an initial 4kb chunk is applicable only when you control the server part... at least now you know that you will need to have received 4kb from the server before &lt;span style="font-weight:bold;"&gt;AllowReadStreamBuffering &lt;/span&gt;take effect.&lt;br /&gt;&lt;br /&gt;Cheers!&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64557.aspx</link><pubDate>Tue, 24 Jun 2008 09:41:13 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64557</guid><dc:creator>plafond444</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64557.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64557</wfw:commentRss><description>&lt;p&gt;Thanks Ola, exactly what I thought when I found &lt;strong&gt;AllowReadStreamBuffering &lt;/strong&gt;yesterday... I was going to reply to my own thread... but unfortunately, it doesn&amp;#39;t seem to affect anything. I set it to &amp;quot;false&amp;quot; just before the &lt;font size="2"&gt;req.BeginGetResponse(... call.&lt;/font&gt; &lt;/p&gt;&lt;p&gt;As you mentioned, it &lt;i&gt;should&lt;/i&gt; allow the stream to be readable right after BeginGetResponse...&amp;nbsp;&lt;font size="2"&gt; as the &lt;/font&gt;&lt;font size="2"&gt;&amp;quot;full framework&amp;quot;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2"&gt;one does (by default).&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;Does someone has a working example with &lt;/font&gt;&lt;strong&gt;HttpWebRequest.AllowReadStreamBuffering&lt;/strong&gt;&lt;font size="2"&gt; set to false? &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;Thanks&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64554.aspx</link><pubDate>Tue, 24 Jun 2008 09:26:14 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64554</guid><dc:creator>plafond444</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64554.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64554</wfw:commentRss><description>&lt;p&gt;I never said I was running a Silverlight console app.... I have one web project for my httphandler, one &amp;quot;console app&amp;quot; project (full framework) and one Silverlight project. I just use the exact same &lt;font size="2"&gt;DownloadTest() method (see the original post) in both projects. &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;As far as I know, the only implementation difference using &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;HttpWebRequest&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2"&gt;(full vs SL)&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2"&gt;was a threading issue (running on UI thread), not an asynchronous one.&lt;br /&gt; &lt;/font&gt;&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64478.aspx</link><pubDate>Tue, 24 Jun 2008 05:11:00 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64478</guid><dc:creator>Ola Karlsson</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64478.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64478</wfw:commentRss><description>&lt;p&gt;There&amp;#39;s actually new functionality in Beta 2 which might do something along the lines of what you&amp;#39;re after.&lt;/p&gt;
&lt;p&gt;From the &lt;strong&gt;HttpWebRequest.AllowReadStreamBuffering Property&lt;/strong&gt; &lt;a class="" href="http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.allowreadstreambuffering(VS.95).aspx"&gt;documentation&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;quot;When AllowReadStreamBuffering is true, the data is buffered in memory so it is ready to be read by the application.&lt;/p&gt;
&lt;p&gt;The AllowReadStreamBuffering property affects when the callback from BeginGetResponse method is called. When the AllowReadStreamBuffering property is true, the callback is raised once the entire stream has been downloaded into memory. &lt;strong&gt;When the AllowReadStreamBuffering property is false, the callback is raised as soon as the stream is available for reading which may be before all data has arrived&lt;/strong&gt;.&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64427.aspx</link><pubDate>Tue, 24 Jun 2008 01:28:13 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64427</guid><dc:creator>pbromberg</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64427.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64427</wfw:commentRss><description>&lt;p&gt;No. HttpWebRequest or WebClient implementations in the Silverlight CLR are NOT the exact equivalents of the full .NET Framework implementations. &lt;/p&gt;
&lt;p&gt;You have to remember, when you create a Silverlight application you are compiling your code against the Silverlight CLR, which is a subset of the .NET Framework that is designed to install and&amp;nbsp;run on the client, in the&lt;u&gt; web browser&lt;/u&gt;, on the client machine. These classes have been created to work *like* their full framework counterparts, but to run in the Silverlight framework which is designed to download, install, and run on the client in the browser itself.&lt;/p&gt;
&lt;p&gt;In other words, there is no such thing as a &amp;quot;Console App&amp;quot; in Silverlight.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64416.aspx</link><pubDate>Tue, 24 Jun 2008 00:45:32 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64416</guid><dc:creator>plafond444</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64416.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64416</wfw:commentRss><description>But if the asynchronous mode is the problem, why does it work in my console app? It&amp;#39;s probably not the same assembly code (System.Net.dll), but since HttpWebRequest.BeginGetResponse&amp;#39;s nature is to process the request asynchronously, shouldn&amp;#39;t it produce the same result on both environments? &lt;br /&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64357.aspx</link><pubDate>Mon, 23 Jun 2008 19:52:29 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64357</guid><dc:creator>pbromberg</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64357.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64357</wfw:commentRss><description>&lt;p&gt;What John means is that in Silverlight, WebClient and HttpWebRequest ONLY work in asynchronous mode. In order to get your results, you must do so inside the callback method.&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64333.aspx</link><pubDate>Mon, 23 Jun 2008 18:43:17 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64333</guid><dc:creator>plafond444</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64333.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64333</wfw:commentRss><description>&lt;p&gt;Thanks John... Asynchronous, yes but still... do you mean the same kind of contraint as in Microsoft.XMLHTTP where&amp;nbsp;readyState.INTERACTIVE is not working &lt;img src="http://silverlight.net/emoticons/emotion-1.gif" alt="Smile" /&gt;? I mean Mozilla&amp;#39;s XMLHttpRequest used&amp;nbsp;in async mode can receive the stream before it&amp;#39;s completed, why not HttpWebRequest?&lt;/p&gt;</description></item><item><title>Re: HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64320.aspx</link><pubDate>Mon, 23 Jun 2008 17:53:46 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64320</guid><dc:creator>johnnystock</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64320.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64320</wfw:commentRss><description>&lt;p&gt;Not a bug but a constraint in Silverlight.&amp;nbsp; Silverlight is asynchronous only so it&amp;#39;s basically all or nothing.&lt;/p&gt;</description></item><item><title>HttpWebRequest - receiving stream before it's completed. Should it work?</title><link>http://forums.silverlight.net/forums/thread/64316.aspx</link><pubDate>Mon, 23 Jun 2008 17:42:23 GMT</pubDate><guid isPermaLink="false">d0d632c8-a6f7-4f68-b0ce-26aaafd62132:64316</guid><dc:creator>plafond444</dc:creator><slash:comments>0</slash:comments><comments>http://forums.silverlight.net/forums/thread/64316.aspx</comments><wfw:commentRss>http://forums.silverlight.net/forums/commentrss.aspx?SectionID=17&amp;PostID=64316</wfw:commentRss><description>&lt;p&gt;...because it works&amp;nbsp;on a&amp;nbsp;.Net&amp;nbsp;console application. On my console app, I receive data every 10 sec (see my httphandler code, it&amp;#39;s just a loop with Thread.Sleep(10000)). But in my SL app, it all arrives after 50 sec (once completed).&lt;/p&gt;
&lt;p&gt;Here is the code... Same method in both apps...&amp;nbsp;except for the &amp;quot;Console.WriteLine(...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;public&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;void&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; DownloadTest()&lt;br /&gt;{&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; string&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; url = &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;http://localhost:3583/_testerweb/test.clbk&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;;&lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;AutoResetEvent&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; autoEvent = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;AutoResetEvent&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;(&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;false&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;);&lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;HttpWebRequest&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; req = &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;WebRequest&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;.Create(url) &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;as&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;HttpWebRequest&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;;&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;req.BeginGetResponse(arResponse =&amp;gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;{&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;{&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; (&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;HttpWebResponse&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; svrResp = req.EndGetResponse(arResponse) &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;as&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;HttpWebResponse&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;)&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;{&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; (&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;StreamReader&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; sr = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;StreamReader&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;(svrResp.GetResponseStream()))&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;{&lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;String&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; outputData = &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;;&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; bsize = 256;&lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;Char&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;[] buffer = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;Char&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;[bsize];&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nbByte = sr.Read(buffer, 0, bsize);&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; (nbByte &amp;gt; 0)&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;{&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;outputData = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;String&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;(buffer, 0, nbByte);&lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;Console&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;.WriteLine(outputData);&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;nbByte = sr.Read(buffer, 0, bsize);&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;}&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;}&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;}&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;}&lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; finally&lt;br /&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;{&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;autoEvent.Set();&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;}&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;}, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;);&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;autoEvent.WaitOne();&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;}&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;...and from&amp;nbsp;the HttpHandler that writes to the string:&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;public&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;void&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; ProcessRequest(&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;HttpContext&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; context)&lt;br /&gt;{&lt;br /&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nb = 5;&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; (nb &amp;gt; 0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; context.Response.Write(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;status : &amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;+nb);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; context.Response.Flush();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nb--;&lt;br /&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#2b91af" size="2"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;Thread&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;.Sleep(10000);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; context.Response.Write(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;ALL DONE&amp;quot;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; context.Response.End();&lt;br /&gt;}&lt;br /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;It cannot be easier... Either it&amp;#39;s a bug or it&amp;#39;s a constraint on Silverlight version?&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;Thanks for your feebacks!&lt;/p&gt;&lt;/font&gt;</description></item></channel></rss>