Dive deep into the new ASP.NET AJAX features and capabilities including patterns covering search optimization, user interface and usability, intuitive navigation, and much more.
2. Quick overview of ASP.NET Ajax
Ajax deep-dive
Cover some key real-world problems
Discuss solutions, patterns, opportunities
Lots of demos
And more of ASP.NET Ajax
3. Partial rendering
Update a portion of the page without writing any script
Ajax Control Toolkit
Open source project at
http://www.codeplex.com/AtlasControlToolkit
Lots of Ajax-enabled server controls
Web services
Exposing web services as JSON services
Super simple access via script proxies and networking
stack
Script Framework (MicrosoftAjax.js)
Type system, and general framework for creating Ajax
apps
4.
5. Ajax has become mainstream
Users have come to expect it
However, subtle use of Ajax is usually effective
Don‟t have to go overboard with flashy apps
It is about creating better user experiences
Fluid user interface matching user task flows
Rich data visualization
Intuitive data entry
It is not just about updating page contents
by issuing xmlhttp requests
6. Script complexity
Indexability and SEO
Navigation and bookmarkability
Increasing user expectations
Diagnostics/Tracing/Monitoring
Performance
Accessibility
Browser API inconsistencies
…
7. Increasing complexity with increased Ajax features
Use appropriate framework features
Script components, encapsulation of logic
OOP
Separation of content, presentation, and logic
Partial rendering in ASP.NET
Behaviors in ASP.NET Ajax
Re-use and encapsulation mechanism
Represent script logic that you attach to markup
Usable in a variety of scenarios
Enable better designer/developer workflow
8.
9. Ajax updates don‟t affect the browser history
Breaks the back button
Might also break bookmarkability
It is an opportunity!
You have a clean slate
Add your own history points to create a better
navigation model than regular post-backs
ASP.NET Ajax History Feature
Very simple API to abstract browser “nuances”
Call addHistoryState()
Handle the navigated event to detect state changes
Updates URL fragment to also provide bookmarkability
10.
11. Preserving indexability is a must for most sites
Relies on presence of static data within pages
Ajax apps often fetch data dynamically
App structure and logic isn‟t useful for searching
An alternate Ajax pattern
Embed data statically within the page
Make every page of data independently discoverable
via sitemaps
Script consumes data and creates interactive
presentation
Script uses xmlhttp to implement paging as well
14. Increasing user expectations for functionality
Ability to work with local files
Expectations around faster applications
Deeply integrating media experiences
Using islands of Silverlight
Can be used incrementally to light up existing Ajax
apps
Balancing reach and capabilities
New capabilities to your application
CLR-based execution, threads for background work
Access to local storage and files
Vector graphics, media
15.
16. ASP.NET Ajax
http://ajax.asp.net
Docs, how-to videos, forums etc.
Ajax Control Toolkit
http://www.codeplex.com/AtlasControlToolkit
My Blog
http://www.nikhilk.net
Slides + Samples
My Contact Form
17. Prioritize creating better user experiences
Think about where to apply Ajax in your
applications
Approach Ajax systematically
Separate content and behavior
Apply established patterns for addressing
key Ajax challenges
Leverage ASP.NET Ajax
Solutions and framework for creating real-world
Ajax apps
19. Ajax apps have a lot more happening on the
client
Tracking script execution in production
Handling errors internally and logging them
End-user shouldn‟t ever see script errors
Other tracing and tracking scenarios
20.
21. Broad discussion topic with several facets
Script downloading/bandwidth consumption
Script execution time
Perception – get some rendering quick
…
ScriptManager.LoadScriptsBeforeUI
One upcoming ASP.NET Feature:
Script combining
Reduces the number of script downloads per page