Taking ASP NET AJAX to the Next Level
- Slides: 42
Taking ASP. NET AJAX to the Next Level Jonathan Carter www. lostintangent. com www. twitter. com/lostintangent
What exactly is the “next level”?
“The Next Level” The Current Level
What’s going to happen here… Let’s address this issue we all seem to have with Java. Script How can the illustrious “next level” be reached by developers of all shapes and sizes? Learning to love ASP. NET AJAX for what is it, and what it isn’t
Why do some find Java. Script painful? . . .
Who in their right mind wants to write code like that?
Frameworks to the rescue!
Server-Centric AJAX Server AJAX ring e Rend Initial request: HTML Form POST HTML This is how ASP. NET Web. Forms developers get to the “next level”
So what is the story with the AJAX Control Toolkit?
AJAX Control Toolkit enhancements 3 brand new controls 1) HTML Editor 2) Color Picker 3) Combo Box 20+ bugs fixed Go grab it: http: //www. asp. net/Ajax/ajaxcontroltoolkit
Who do we have to thank for that? Alexander Turlov Bennett Adelson Consulting, Inc. http: //www. bennettadelson. com Dan Ludwig Obout Software, Inc. http: //www. obout. com
Moving forward, the ACT will be getting much stronger…
demo Server-Side AJAX
“ASP. NET AJAX is alright, but it is way too server-centric for serious client-side development…” - Misinformed Guy
VERY IMPORTANT POINT! ASP. NET AJAX supports the entire ASP. NET ecosystem and beyond…
Common Myths ASP. NET AJAX is tied to ASP. NET, namely Web. Forms… You must use a Script. Manager and Update. Panels to get anything done… It requires Visual Studio to work…
Mr. Owl Challenge! How many demos does it take to get to the client-side center of an ASP. NET AJAX presentation?
Client-Centric AJAX Server AJAX ring e Rend Initial request: HTML Form POST HTML Client AJAX HTML + JSON ring e Rend
The server should only be concerned with data, not presentation
Client Templates Server-Side (Web. Forms): <Item. Template> <li><%# Eval("Name") %></li> </Item. Template> Client-Side: <ul class="sys-template"> <li>{binding Name}</li> </ul>
Client Controls Data. View Data. Context Templated UI (master/detail) Service communication Command bubbling Change tracking Data. Context integration Problems solved: 1. Client-templates 2. Data binding 3. Client controls Problems solved: 1. Easy service communication 2. Client controls
demo Client-Side AJAX: A One
How can we easily interact with elements within the template?
Command Bubbling Server-Side (Web. Forms): <asp: Button runat=“server” Command. Name=“Select" … /> Client-Side: <button sys: command="select" … />
What if you want to “connect” objects together?
Live Bindings Source Target Object #1 Object #2 Property #1 Property #2 Property #3 One-Time One-Way Two-Way The property is bound the source Bothtarget the target property and to source property, only once. will stay in sync. and boundand to each other, and will stay in sync.
demo Command Bubbling & Live Bindings: A Two-Hoo
What if our service interaction is geared more towards data than it is behavior?
Data. Context “in depth”… ASMX 1. Request WCF Data Context 3. Modify Data 2. JSON Data 4. Save Data ADO. NET Data Services ASP. NET MVC Json. Result Etc.
That slide made change tracking look really easy!
demo ADO. NET Data Services & Change Tracking: A Three
Maybe you’d prefer to write as little Java. Script as possible…
Declarative Instantiation 1. Map: <body … xmlns: dataview="javascript: Sys. UI. Data. View“ … > 2. Attach: <div sys: attach="dataview"></div> 3. Use: <div … dataview: serviceuri="my. Service. svc“ … >
Marketing Translation… Map. Attach. Use.
Did I mention that it is XHTML compliant?
demo Declarative Instantiation: Cruuuunch!
Browser Support Microsoft Internet Explorer 6 Microsoft Internet Explorer 7 Microsoft Internet Explorer 8 Mozilla Firefox 2 Mozilla Firefox 3 Apple Safari 3 Opera 9. 6
Takeaways Java. Script isn’t to be feared ASP. NET AJAX and j. Query work great together The ACT provides a strong ecosystem of UI widgets
Complete an evaluation on Comm. Net and enter to win!
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U. S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
- Classic asp to asp.net migration
- X.next = x.next.next
- Imperva waf bypass xss
- Client server architecture in asp net
- Asp.net session management
- Asp.net execution model
- Asp.net agenda
- Microsoft asp.net core privilege escalation (march 2018)
- Asp net session state
- Web development timeline
- What is aspnet
- Asp.net server controls
- Introduction to asp.net
- Custom controls in asp.net
- Asp.net soap
- Asp.net core tutorialspoint
- Fromservicesattribute
- Asp.net agenda
- Hlgoogle translate
- Authentication filters in mvc 5
- Asp net load testing
- Asp.net core 5 odata
- Output cache in mvc
- Crud asp.net c# web forms
- 大阪 microsoft asp.net
- Reflection in asp net
- Feature flag meaning
- 大阪 microsoft asp.net
- Desarrollo de aplicaciones web con asp.net
- Media server架設
- Asp.net
- Next level innovations
- Swot analysis of event venue
- Next level building
- Google maps ajax
- Achilles and ajax playing dice
- Ajax stands for
- Red ocean dynatrace
- Frenotomy ajax
- Pinewood oshawa
- Ajax updater
- Ajax
- Al noor ajax