InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Atlas June CTP Released

Posted by Marcie Jones on Jul 06, 2006

Sections
Development
Topics
.NET Framework ,
Rich Internet Apps ,
.NET
Tags
AJAX ,
ASP.NET AJAX ,
CTP

Microsoft has released a new Community Tech Preview (CTP) of Atlas, Microsoft's AJAX framework for ASP.NET. Note that Atlas can also be used with other web technoloogies such as PHP or ColdFusion via the Atlas client-script libraries.

ASP.NET developers can automatically add AJAX functionality to their web applications using Atlas server controls:

<atlas:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" />
<atlas:UpdatePanel ID="UpdateGrid" runat="server">
<ContentTemplate>
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="True"
        DataSourceID="SqlDataSource1">               
        <Columns>
            <asp:CommandField ShowEditButton="True" />
        </Columns>
    </asp:GridView>
    </ContentTemplate>
 </atlas:UpdatePanel>

Since it is inside an UpdatePanel, the above GridView will update the database via AJAX without a page postback, without the developer having to write any AJAX code (or codebehind logic if using a SqlDataSource), and it works in a cross-browser manner. The UpdatePanel can also be notified to refresh its content based on another control on the page (but outside the UpdatePanel) using Triggers.

Changes in the Atlas June CTP include:

UpdatePanel:

  • UpdatePanels can be added to a page dynamically throughout the page lifecycle, including UpdatePanels inside templates. UpdatePanels now also work inside WebParts, and WebParts can be inside UpdatePanels.
  • UpdatePanel will preserve cookies set during an async postback when Response.Redirect() is called. This fixes Login control scenarios where an authorization cookie is set and the user gets redirected to the previous page.

Networking:

  • ServiceMethod uses default error handler if none specified.
  • XsltBridgeTransformer now works with VirtualPathProviders
  • DBNull.Value now should be serialized as null
  • ServiceReferences now support optional InlineProxy attribute for generating service proxies in the page rather than through a serviceurl/js script reference.
  • Fix for scenarios where web service proxy contained the wrong port (webfarms, port forwarding)

Drag and Drop:

  • Drag and drop will no longer produce debug output
  • Interactive HTML elements (input, button, textarea, select, label, anchors with an href) can no longer be dragged directly

Miscellaneous Changes:

  • Date.toFormattedString improvements
  • Client-side data: SaveData fix for strongly-typed DataSets

Most notable is the ability to create update panels dynamically, which allows them to be used inside composite controls, such as web parts and GridViews, or within custom server controls, significantly enhancing the extensibility of Atlas. Atlas architect Nikhil Kothari has control creation example available on his blog.

To learn more about Atlas, visit Scott Guthrie's Atlas Resources.

No comments

Watch Thread Reply

Educational Content

Jesper Boeg on Priming Kanban

In this interview, Jesper Boeg, author of the new InfoQ book – Priming Kanban, discusses the keys to using Kanban effectively, and how to get started if you are currently using other approaches.

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.