<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Ajax Data Controls</title>
        <link>http://geekswithblogs.net/rashid/category/6675.aspx</link>
        <description>Ajax Data Controls</description>
        <language>en-US</language>
        <copyright>Kazi Manzur Rashid</copyright>
        <managingEditor>kazimanzurrashid@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Another Article on Ajax Control Development</title>
            <link>http://geekswithblogs.net/rashid/archive/2007/07/09/Another-Article-on-Ajax-Control-Development.aspx</link>
            <description>&lt;p&gt; Another addition of my Ajax Control Development Article series. This time it is Asp.net Ajax Repeater. &lt;a href="http://dotnetslackers.com/articles/ajax/ASPNETRepeater.aspx" target="_blank"&gt;Check it out&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a target="_blank" href="http://www.dotnetkicks.com/kick/?url=http://dotnetslackers.com/articles/ajax/ASPNETRepeater.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://dotnetslackers.com/articles/ajax/ASPNETRepeater.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113788"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113788" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/rashid/aggbug/113788.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kazi Manzur Rashid</dc:creator>
            <guid>http://geekswithblogs.net/rashid/archive/2007/07/09/Another-Article-on-Ajax-Control-Development.aspx</guid>
            <pubDate>Mon, 09 Jul 2007 11:43:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/rashid/comments/113788.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/rashid/archive/2007/07/09/Another-Article-on-Ajax-Control-Development.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/rashid/comments/commentRss/113788.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/rashid/services/trackbacks/113788.aspx</trackback:ping>
        </item>
        <item>
            <title>Generate HTML from an ITemplate</title>
            <link>http://geekswithblogs.net/rashid/archive/2007/06/23/Generate-HTML-from-an-ITemplate.aspx</link>
            <description>&lt;p&gt;While working on Ajax Data Controls Project, I need the generated HTML from an ITemplate. Here is the code that generates the html, some of you may find it useful.&lt;/p&gt; &lt;div class="csharpcode"&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;StringBuilder output = &lt;span class="kwrd"&gt;new&lt;/span&gt; StringBuilder();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;StringWriter sw = &lt;span class="kwrd"&gt;new&lt;/span&gt; StringWriter(output, CultureInfo.InvariantCulture);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;HtmlTextWriter htw = &lt;span class="kwrd"&gt;new&lt;/span&gt; HtmlTextWriter(sw);&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;Control control = &lt;span class="kwrd"&gt;new&lt;/span&gt; Control(); &lt;span class="rem"&gt;// Create a Fake control to act as a Container&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;template.InstantiateIn(control); &lt;span class="rem"&gt;// This is the ITemplate&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;control.RenderControl(htw);&lt;span class="rem"&gt;//Dump the control in HTMLWriter&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;htw.Close();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;&lt;span class="kwrd"&gt;string&lt;/span&gt; html = output.ToString(); &lt;span class="rem"&gt;// This is the generated HTML&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113408"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113408" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/rashid/aggbug/113408.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kazi Manzur Rashid</dc:creator>
            <guid>http://geekswithblogs.net/rashid/archive/2007/06/23/Generate-HTML-from-an-ITemplate.aspx</guid>
            <pubDate>Sat, 23 Jun 2007 10:23:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/rashid/comments/113408.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/rashid/archive/2007/06/23/Generate-HTML-from-an-ITemplate.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/rashid/comments/commentRss/113408.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/rashid/services/trackbacks/113408.aspx</trackback:ping>
        </item>
        <item>
            <title>My New Project AjaxDataControls</title>
            <link>http://geekswithblogs.net/rashid/archive/2007/06/15/My-New-Project-AjaxDataControls.aspx</link>
            <description>&lt;p&gt;I have just started a new Project in CodePlex &lt;a href="http://www.codeplex.com/AjaxDataControls" target="_blank"&gt;AjaxDataControls&lt;/a&gt;. I am planning to include GridView, DataList, Repeater, DetailsView, FormView and ObjectDataSource in the initial release. Since the Asp.net version of these controls does not have any object model in the client side as those were released long before Ajax framework, currently the only choice available working with this controls is to surround these controls in an UpdatePanel. UpdatePanel is a great option for developing Small/Mid size application, but it really suffers in large-scale applications, such as start-page like &lt;a href="http://www.pageflakes.com" target="_blank"&gt;Pageflakes&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;In Server Centric Development or Update Panel model, developers usually develop the pages with regular controls wrapped in one or more update panel. This approach surly gives the Ajax version of the page but it adds extra overhead with the regular page life cycle. By the extra overhead I mean the logic that is required to generate the updated part of the page. From the developer point of view it is rather easy and takes less coding comparing to the Client Centric Development Model. &lt;/p&gt; &lt;p&gt;On the other hand in Client Centric Development model, developer calls web services, which in turns returns/updates the data. The data it transmits is quite small comparing the Server Centric Development model. The rendering logic resides in the JavaScript, the browser offloads the web server from the consequent rendering responsibility and this makes the whole application more scalable. But the problem with this approach is, it requires more time to develop the application, as the developer does not get the various benefits of Visual Studio, which they often get for Server Centric Development model such as Syntax checking, Design time support, Browser compatibility etc. &lt;/p&gt; &lt;p&gt;The Ajax Toolkit Team has already included 30+ controls in the last release, yet they did not provide any, which works with data, and looking at the release plan, I am bit upset to know that they do not have any plan for these kinds of controls. And certainly this is the primary reason to start this project, which I hope will be a great help in future for the hardcore database developers like me. Currently the Project includes few prototypes of GridView, Repeater and Pager.&lt;/p&gt; &lt;p&gt;&lt;a target="_blank" href="http://www.dotnetkicks.com/kick/?url=http://geekswithblogs.net/rashid/archive/2007/06/15/My-New-Project-AjaxDataControls.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://geekswithblogs.net/rashid/archive/2007/06/15/My-New-Project-AjaxDataControls.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113246"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113246" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/rashid/aggbug/113246.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kazi Manzur Rashid</dc:creator>
            <guid>http://geekswithblogs.net/rashid/archive/2007/06/15/My-New-Project-AjaxDataControls.aspx</guid>
            <pubDate>Fri, 15 Jun 2007 10:20:17 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/rashid/comments/113246.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/rashid/archive/2007/06/15/My-New-Project-AjaxDataControls.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/rashid/comments/commentRss/113246.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/rashid/services/trackbacks/113246.aspx</trackback:ping>
        </item>
    </channel>
</rss>