Migrating ASP to ASP.NET Matt Gibbs ASP.NET Development Manager.

Slides:



Advertisements
Similar presentations
Faith Allington Program Manager Microsoft Corporation WSV322.
Advertisements

Microsoft SharePoint 2010 technology for Developers
Internet Information Server 6.0. IIS 6.0 Enhancements  Fundamental changes, aimed at: Reliability & Availability Reliability & Availability Performance.
Building and Using Web Services with ASP.NET Rob Howard Program Manager.NET Framework Team Microsoft Corp.
Running PHP on Windows Server 2008 and IIS 7 Rob Cameron Developer Evangelist, Communications Sector Microsoft.
NGT Information Technology Technical Discussion Bob DeHoff Info Tech, Inc.
Лектор: Борислава Палева. Agenda What’s new in IIS7? IIS7 for IT Pros Demos –Explore new tools –Tracing enhancements –View live requests.
PHP on Windows Improvements in PHP-Microsoft Interoperability PHP World Kongress Munich, Germany November 9, 2010.
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Lap Around IIS7 Bill Staples Product Unit Manager, IIS COM014 – A Lap Around IIS7 Microsoft Corporation xxx Roller Coaster Ride.
Kashif Jalal CA-240 (072) Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 2 of…
Satisfy Your Technical Curiosity Internet Information Services (IIS) 7.0 End-to-End Overview of Microsoft's New Web Application Server Bart De Smet MVP,
Internet Information Server (IIS)
Jonas Thomsen, Ph.d. student Computer Science University of Aarhus Best Practices and Techniques for Building Secure Microsoft.
DEV450 Visual Studio: Best Practices For Debugging Managed Applications Habib Heydarian Scott Nonnenberg Program Managers Microsoft Corporation.
IIS 7: The Next Generation Web Application Server Platform Michael Volodarsky Program Manager Web Platform and Tools Team Microsoft Corporation.
April-June 2006 Windows Hosting Seminar Series Product Roadmap: IIS 7.0 Matthew Boettcher Web Platform Technical Evangelist (Hosting) Developer & Platform.
IT533 Lectures Configuring, Deploying, Tracing and Error Handling.
Virtual techdays INDIA │ august 2010 IIS 7/7.5 Tips & Tricks Jaskirat Singh │ Technical Lead [IIS|Asp.Net team], Microsoft.
Edwin Sarmiento Microsoft MVP – Windows Server System Senior Systems Engineer/Database Administrator Fujitsu Asia Pte Ltd
XML Web Services in Visual Studio.NET Peter Ty Developer Evangelist.NET and Developer Group.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Deployment of web Site. Preparing the web site for deployment you now have two versions of web site 1 -one running in the production environment 2-one.
CIS 375—Web App Dev II ASP.NET 2 Introducing Web Forms.
ASP.NET INTRODUCTION INTO وزارة التربية و التعليم العالي كلية العلوم و التكنولوجيا قسم علوم الحاسوب و تكنولوجيا المعلومات اعداد الاستاذ: عبد الله محمد.
An Introduction to ASP.NET Ed Dunhill blogs.msdn.com/edunhill SLIDE7.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Introduction to ASP.NET 1www.tech.findforinfo.com.
1 Web services and security ---discuss different ways to enforce security Presenter: Han, Xue.
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
Efficient Deployment & Management of ASP.NET 2.0 Applications on IIS 6.0 Alexis Eller Program Manager Internet Information Services Microsoft Corporation.
The.NET Runtime and IIS Presented by Chris Dickey – cdickey.net consulting
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Module 2: Overview of IIS 7.0 Application Server.
Active Server Pages (ASP), also known as Classic ASP or ASP Classic, was Microsoft's first server-side script engine for dynamically generated web pages.
Module 2: Using Microsoft Visual Studio.NET. Overview Overview of Visual Studio.NET Creating an ASP.NET Web Application Project.
WEB320 Migrating ASP.NET 1.x Applications to ASP.NET 2.0 Stefan Schackow Program Manager Web Platform and Tools Team Microsoft Corporation.
Christopher M. Pascucci.NET Programming CodeBehind.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
ASP.NET in Definition: 1.ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites,
IIS and.Net security -Vasudha Bhat. What is IIS? Why do we need IIS? Internet Information Services (IIS) is a Web server, its primary job is to accept.
Introducing ASP+ Scott Mitchell
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
ISV Community Day Best Practice Per Ahlberg Developer Evangelist Developer & Platform Evangelism Microsoft Sweden.
Module 4: Design IIS Maintenance and UDDI. Designing Internet Information Services Backup and Recovery Specifying Monitoring requirements Deploying UDDI.
IIS 7 for Hosters Deven Kampenhout Web Platform Architect Developer & Platform Evangelism.
DEV395 No Touch Deployment for Windows Forms Jamie Cool Program Manager.NET Client Microsoft Corporation.
ASP. NET Differences Dave Webster EMEA Technical Team dave
CIS 375—Web App Dev II ASP.NET 1 Getting Started.
Configuring and Deploying Web Applications Lesson 7.
Extending SharePoint through Web Parts and ASP.NET 최승현 대리 한국마이크로소프트.
Internet Information Server 6.0 & new management features.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
ASP.NET Architecture Mike Taulty Developer & Platform Group Microsoft Ltd
Building More Powerful ASP.NET Applications with IIS7 Michael Volodarsky COM303 Program Manager Microsoft Corporation.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
ASP Mr. Baha & Dr.Husam Osta  What is ASP?  Internet Information Services  How Does ASP Differ from HTML?  What can ASP do for you?  ASP Basic.
Arizona SharePoint Professionals Group.
Active Server Pages ASP.Net
ASP.NET Application Framework
Moving from ASP to ASP.NET
Web Development Using ASP .NET
Introduction to .net Impersonation
ASP.NET Module Subtitle.
Introducing the .NET Framework
Introduction to ASP.NET Parts 1 & 2
Mark Quirk Head of Technology Developer & Platform Group
IIS and .NET Security Application Pools Pamella Smith June 18, 2009.
Presentation transcript:

Migrating ASP to ASP.NET Matt Gibbs ASP.NET Development Manager

Classic Active Server Pages Background Why Migrate to ASP.NET? Migration Strategies ASP.NET Migration Issues Tools Questions Agenda

Active Server Pages

Leading web app development platform –Nearly 1 million developers using ASP today –Many well known applications and sites Simple and approachable –No compilers required – “just hit save” –Easy to use languages and object model –Great integration with COM and COM+ Well established developer support base –Online communities –Books/Consulting/Conferences Active Server Pages

How it works….

Internet Information Server Requests 6Responses ISAPI Filters ISAPI Extensions ASP.DLL ASP Script Engine 2 3.asp file Script Execution 5 4 Script Code 9 8 Script Engine Cache

Issues with “Classic” ASP Way too much code required –Simple tasks often not easy Applications contain spaghetti code –Poor re–use/encapsulation model –Code runs from top of page to bottom Late-bound scripting, no strong typing –Different language model in COM though Deployment issues –COM and metabase

Sample ASP Page demo

How ASP.NET Works

ASP.NET Http Runtime Page Class Requests 6Responses 3 ASPX Engine 2 ASP.NET Page Modules Page Handler 5 Class Instance

Sample ASP.NET Page demo

Migrating to ASP.NET Benefits of Migration Performance and scalability –Strongly typed code, compiled into binaries –Easily scalable to web farms –Page, partial page, and data caching Productivity –Web forms and server controls –Web services –Rich application framework –Great tools and languages support –Supports many mobile browsers

Security –Can run under least privilege account –Built-in forms based authentication –Custom security infrastructure Reliability –Application isolation, recycling, health detection –Benefits of managed code Manageability –XCOPY deployment –Easily configurable (web.config) Migrating to ASP.NET Benefits of Migration

Migration will always require work –No magical migration tool –Trivial pages may be easy –Applications will be more difficult Reality is: –Can’t simply change file extensions –Incompatibilities in language, framework, environment Migrating to ASP.NET The Bad News

Developer’s ASP skills will migrate –Natural migration from VBScript to VB –ASP intrinsic objects pulled forward –Inline coding still possible Can leverage existing assets –Existing pages can be converted –Existing components still work (through interop) –Migration can be incremental Migrating to ASP.NET The Good News

Migration Strategies

Vertical Migration –Use both ASP and ASP.NET –Migrate individual features Horizontal Migration –Move.asp files to.aspx –Go for functional equivalence Re-write / New Application –Move completely to ASP.NET –Take advantage of new features

Migration Strategies Vertical Migration ASP and ASP.NET pages run side by side –Separately installed and configured Use ASP.NET without breaking ASP –Migrate or add selected functionality –Useful for new, isolated features –Gain immediate perf benefits Limited interoperability –ASP pages can’t use ASP.NET features –Run in separate worker processes –No sharing of state

Migration Strategies Horizontal Migration Rename.asp to.aspx, and correct problems –Correct page syntax –Translate VBScript to Visual Basic.NET Take advantage of key ASP.NET features –Can call Framework code –Page compilation –Scalable session state, caching Not a full port yet –No improvements in code manageability –COM interop work may be needed

Migration Strategies Full Rewrite Complete rewrite of pages and components –Use ASP.NET server controls –Rewrite business components using Framework Take full advantage of ASP.NET –True code separation, encapsulation –Page framework and controls –ASP.NET Security

Migration Strategies Guidelines Summary Use vertical migration for –Well partitioned applications –New functionality in existing apps Use horizontal migration for –Heavy use of application or session state –Complex, unfactorable tiers Use rewrite for –Re-architecture of system –Significant new functionality

ASP.NET Migration Issues

Semantic Changes Programming Language Single choice of server language –Cannot mix languages on page –Client script not affected VBScript  Visual Basic.NET –All variables have a specific type –No more default properties (big change) –No “Set” and “Let” syntax –Parentheses required for calling subroutines –Arguments now ByVal by default

Code Changes Page functions –Must be in blocks Page “render functions” –Not supported, must use Response.Write Variable references –Cannot reference variables in other blocks Page etc.) no longer supported –Merged into single Page directive

Server Components Options for Using COM Objects Simple Usage –Call Server.CreateObject(“progid”) and access it as a late-bound object Create.NET wrapper classes –Provides early binding –Optimizes performance of calls –TLBIMP.exe utility Rewrite using.NET

Server Components Using ASP Intrinsics in components Support for ASP intrinsics –ObjectContext intrinsic Flow –Application OnStart and OnEnd ASPCompat mode – –Enables access to intrinsic objects

ASP.NET Migration Examples demo

Server Components Performance Considerations Marshalling costs –Calls between ASP.NET and COM –Performance benefits by rewriting COM in.NET ASP.NET Thread Pool now MTA -- not STA –What is an MTA? What is an STA? –Impacts performance of apartment components –VB5 and VB6: Apartment Components Can enable STA Thread Pool on a per-page basis –Address perf. of existing VB components – –Not necessary for C++ MTA components

Security Changes ASP: Use Windows (IIS) authentication –NTLM (default), Basic, Digest, or Kerberos –Impersonate caller by default –Forms based auth: roll your own –ACL based URL authorization ASP.NET: Customizable authentication –Windows (default), Forms, or Passport –Impersonation must be enabled –Built-in forms authentication –Role based declarative authorization

Configuration Changes ASP: Configuration –Binary data store used by IIS (metabase) –Used by Classic ASP –Changes required local server access ASP.NET: XML Configuration –Machine.config, web.config –Most IIS settings do not affect ASP.NET –Changes do not require local server access

Tools

ASP.NET Migration Assistant Features –Corrects ASP.NET page syntax –Translates VBScript into Visual Basic.NET Visual Studio or command line translation Starting point for further migration Available from: –

ASP.NET Migration Assistant demo

Summary Migration not seamless –Will involve some work –Can be done incrementally Worth the efforts –Better performance –Easier development –Cleaner and more manageable code –Platform to build apps for the future