<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.asp.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>ASP.NET AJAX UI</title><link>http://forums.asp.net/1008.aspx</link><description>Here you can discuss UI-related issues with AJAX such as controls and client-side functionality including Silverlight controls for ASP.NET</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Re: Compression does not work with UpdatePanel 2</title><link>http://forums.asp.net/thread/2696847.aspx</link><pubDate>Tue, 21 Oct 2008 12:00:02 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2696847</guid><dc:creator>zhornykUN</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2696847.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=1008&amp;PostID=2696847</wfw:commentRss><description>Thank you for response but I decided not to use UpdatePanel in my solution&amp;nbsp;due to this and others&amp;nbsp;issues.</description></item><item><title>Re: Compression does not work with UpdatePanel 2</title><link>http://forums.asp.net/thread/2696721.aspx</link><pubDate>Tue, 21 Oct 2008 11:18:53 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:2696721</guid><dc:creator>d.marzo</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/2696721.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=1008&amp;PostID=2696721</wfw:commentRss><description>&lt;p&gt;This is a bug (nasty), compress update panel response its high performance improvement,&lt;br /&gt; reported at Microsoft Connect: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=357565&lt;/p&gt;&lt;p&gt;&amp;nbsp;Expected to be fixed at 3.5.&lt;/p&gt;&lt;p&gt;But... Too much people work with 2.0 (include us), and dont want compress at IIS level.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;We play for a while and try to find a workaround, we found, but we need feedback and advice.&lt;/p&gt;&lt;p&gt;You could see description at:&lt;/p&gt;&lt;p&gt;&amp;nbsp;https://connect.microsoft.com/VisualStudio/feedback/Workaround.aspx?FeedbackID=357565&lt;/p&gt;&lt;p&gt;And download source code:&lt;/p&gt;&lt;p&gt;http://www.solnatec.com/archive/public/2008/CompressAjaxResponse.zip&lt;/p&gt;&lt;p&gt;Thanks in advance.&lt;/p&gt;&lt;p&gt;David Marzo&lt;br /&gt;www.solnatec.com&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Compression does not work with UpdatePanel 2</title><link>http://forums.asp.net/thread/1869993.aspx</link><pubDate>Tue, 21 Aug 2007 22:03:41 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:1869993</guid><dc:creator>zhornyk</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/1869993.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=1008&amp;PostID=1869993</wfw:commentRss><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I&amp;#39;m using HttpModule for comression (GZipStream)&amp;nbsp;.&amp;nbsp;It works fine&amp;nbsp;but there is strange error after async request from UpdatePanel :&amp;nbsp;&amp;quot;The message received from the server control could not be parsed.....&amp;quot;&lt;/p&gt;
&lt;p&gt;After debugging Web.Extensions&amp;#39; javascript (clientside AJAX)&amp;nbsp;I&amp;#39;ve found that sometimes &lt;strong&gt;decompressed&amp;nbsp;response from server does not contain one or several last symbols&lt;/strong&gt;. So clientside AJAX cannot parse it.&lt;/p&gt;
&lt;p&gt;Here you can read that this is known issue with GZIp and UpdatePanel:&lt;/p&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;&lt;a href="http://www.thescripts.com/forum/thread670482.html"&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;http://www.thescripts.com/forum/thread670482.html&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;&lt;/a&gt;&lt;a href="http://brennan.offwhite.net/blog/2007/06/20/http-compression-with-ajax"&gt;&lt;font face="Arial" color="#000000" size="3"&gt;http://brennan.offwhite.net/blog/2007/06/20/http-compression-with-ajax&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;&lt;/font&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;But I cannot believe that MS may commit such awful bug.&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;&lt;/font&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;font face="Arial" color="#000000" size="3"&gt;Maybe I&amp;#39;m doing something incorrect on serverside?&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;I really don&amp;#39;t want to change Web.Extensions manually and recompile it to add missing symbols...&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;Here is my server code:&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;font size="2"&gt;&lt;font color="#0000ff"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#a31515"&gt;httpModules&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#0000ff"&gt;&lt;font size="2"&gt; &lt;/font&gt;
&lt;p&gt;&lt;font size="2"&gt;&amp;lt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#a31515"&gt;add&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#ff0000"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&amp;quot;&lt;font color="#0000ff"&gt;ScriptModule&lt;/font&gt;&amp;quot;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#ff0000"&gt;type&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&amp;quot;&lt;font color="#0000ff"&gt;System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&lt;/font&gt;&amp;quot;&lt;/font&gt;&lt;font color="#0000ff"&gt;&lt;font size="2"&gt;/&amp;gt;&lt;/font&gt;&lt;/p&gt;&lt;strong&gt;&lt;em&gt;&lt;font size="2"&gt;&amp;lt;&lt;/font&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;strong&gt;&lt;em&gt;&lt;font color="#a31515"&gt;add&lt;/font&gt;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#ff0000"&gt;name&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&amp;quot;&lt;font color="#0000ff"&gt;CompressionModule&lt;/font&gt;&amp;quot;&lt;font color="#0000ff"&gt; &lt;/font&gt;&lt;font color="#ff0000"&gt;type&lt;/font&gt;&lt;font color="#0000ff"&gt;=&lt;/font&gt;&amp;quot;&lt;font color="#0000ff"&gt;WebSite.CompressionModule&lt;/font&gt;&amp;quot;&lt;/em&gt;&lt;/strong&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;&lt;em&gt; /&amp;gt;&lt;/em&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#0000ff"&gt;&lt;font size="2"&gt; &lt;/font&gt;
&lt;p&gt;&lt;font size="2"&gt;&amp;lt;/&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#a31515"&gt;httpModules&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;font color="#0000ff" size="2"&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;#region&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt; Using&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;using&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt; System;&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;using&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt; System.Web;&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;using&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt; System.IO;&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;using&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt; System.IO.Compression;&lt;/font&gt;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;
&lt;p&gt;#endregion&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;namespace&lt;/font&gt;&lt;font size="2"&gt;&lt;font color="#000000"&gt; WebSite&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;&lt;/font&gt;&lt;font color="#808080" size="2"&gt;///&lt;/font&gt;&lt;font color="#008000" size="2"&gt; &lt;/font&gt;&lt;font color="#808080" size="2"&gt;&amp;lt;summary&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#808080" size="2"&gt; 
&lt;p&gt;///&lt;/font&gt;&lt;font color="#008000" size="2"&gt; Compresses the output using standard gzip/deflate.&lt;/p&gt;&lt;/font&gt;&lt;font color="#808080" size="2"&gt;
&lt;p&gt;///&lt;/font&gt;&lt;font color="#008000" size="2"&gt; &lt;/font&gt;&lt;font color="#808080" size="2"&gt;&amp;lt;/summary&amp;gt;&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;public&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;class&lt;/font&gt;&lt;font size="2"&gt; CompressionModule : IHttpModule&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;public&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;void&lt;/font&gt;&lt;font size="2"&gt; Init(HttpApplication context)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;context.BeginRequest += &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;EventHandler&lt;/font&gt;&lt;font size="2"&gt;(context_BeginRequest);&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;}&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;private&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;void&lt;/font&gt;&lt;font size="2"&gt; context_BeginRequest(&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;object&lt;/font&gt;&lt;font size="2"&gt; sender, &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;EventArgs&lt;/font&gt;&lt;font size="2"&gt; e)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;HttpApplication app = (HttpApplication)sender;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;if&lt;/font&gt;&lt;font size="2"&gt; (app.Request.Url.ToString().ToLower().IndexOf(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;aspx&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;) &amp;lt; 0) &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;return&lt;/font&gt;&lt;font size="2"&gt;;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;string&lt;/font&gt;&lt;font size="2"&gt; encodings = app.Request.Headers.Get(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;Accept-Encoding&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;);&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;if&lt;/font&gt;&lt;font size="2"&gt; (encodings == &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;null&lt;/font&gt;&lt;font size="2"&gt;) &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;return&lt;/font&gt;&lt;font size="2"&gt;;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;Stream&lt;/font&gt;&lt;font size="2"&gt; baseStream = app.Response.Filter;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;encodings = encodings.ToLower();&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;if&lt;/font&gt;&lt;font size="2"&gt; (encodings.Contains(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;gzip&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;))&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;app.Response.Filter = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; GZipStream(baseStream,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;CompressionMode.Compress);&lt;/p&gt;app.Response.AppendHeader(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;Content-Encoding&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;gzip&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;);&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;}&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;else&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;if&lt;/font&gt;&lt;font size="2"&gt; (encodings.Contains(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;deflate&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;))&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;app.Response.Filter = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; DeflateStream(baseStream,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;CompressionMode.Compress);&lt;/p&gt;app.Response.AppendHeader(&lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;Content-Encoding&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;, &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;deflate&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;);&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;public&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;void&lt;/font&gt;&lt;font size="2"&gt; Dispose()&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;}&lt;/font&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;Please help me.&lt;/div&gt;&lt;/div&gt;&lt;/font&gt;&lt;/div&gt;</description></item></channel></rss>