Download presentation
Presentation is loading. Please wait.
Published byApril Dalton Modified over 9 years ago
1
Migrating ASP to ASP.NET Matt Gibbs ASP.NET Development Manager
2
Classic Active Server Pages Background Why Migrate to ASP.NET? Migration Strategies ASP.NET Migration Issues Tools Questions Agenda
3
Active Server Pages
4
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
5
How it works….
6
Internet Information Server 10 7 1Requests 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
7
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
8
Sample ASP Page demo
9
How ASP.NET Works
10
ASP.NET Http Runtime Page Class 4 8 9 7 1 Requests 6Responses 3 ASPX Engine 2 ASP.NET Page Modules Page Handler 5 Class Instance
11
Sample ASP.NET Page demo
12
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
13
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
14
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
15
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
16
Migration Strategies
17
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
18
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
19
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
20
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
21
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
22
ASP.NET Migration Issues
23
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
24
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 directives (@Option, @Session, etc.) no longer supported –Merged into single Page directive
25
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
26
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
27
ASP.NET Migration Examples demo
28
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
29
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
30
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
31
Tools
32
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: –http://www.asp.net/migrationassistants/
33
ASP.NET Migration Assistant demo
34
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.