Migrating ASP to ASP'NET - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

Migrating ASP to ASP'NET

Description:

Classic Active Server Pages Background. Why Migrate to ASP.NET? Migration Strategies ... Active Server Pages. Leading web app development platform ... – PowerPoint PPT presentation

Number of Views:820
Avg rating:3.0/5.0
Slides: 34
Provided by: pedro7
Category:
Tags: asp | net | migrating

less

Transcript and Presenter's Notes

Title: Migrating ASP to ASP'NET


1
Migrating ASP to ASP.NET
Pedro Miguel Rosa prosa_at_microsoft.com Senior
Software Engineer Developer Platform Group
2
Agenda
  • Classic Active Server Pages Background
  • Why Migrate to ASP.NET?
  • Migration Strategies
  • ASP.NET Migration Issues
  • Tools
  • Questions

3
Active Server Pages
4
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

5
How it works.
6
Internet Information Server
7
Issues with Classic ASP
  • Way too much code required
  • Simple tasks often not easy
  • Applications contain spaghetti code
  • Poor reuse/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
9
How ASP.NET Works
10
Requests
ASP.NET Http Runtime
11
Migrating to ASP.NETBenefits 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

12
Migrating to ASP.NETBenefits of Migration
  • 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)

13
Migrating to ASP.NETThe Bad News
  • Migration will always require work
  • No magical migration tool
  • Trivial pages may be easy
  • Applications will be more difficult
  • Reality is
  • Cant simply change file extensions
  • Incompatibilities in language, framework,
    environment

14
Migrating to ASP.NETThe Good News
  • Developers 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

15
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

16
Migration StrategiesVertical 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 cant use ASP.NET features
  • Run in separate worker processes
  • No sharing of state

17
Migration StrategiesHorizontal 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

18
Migration StrategiesFull 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

19
Migration StrategiesGuidelines 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

20
ASP.NET Migration Issues
21
Semantic ChangesProgramming 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

22
Code Changes
  • Page functions
  • Must be in ltscript runatservergt blocks
  • Page render functions
  • Not supported, must use Response.Write
  • Variable references
  • Cannot reference variables in other lt gt blocks
  • Page directives (_at_Option, _at_Session, etc.) no
    longer supported
  • Merged into single Page directive

23
Server ComponentsOptions 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

24
Server ComponentsUsing ASP Intrinsics in
components
  • Support for ASP intrinsics
  • ObjectContext intrinsic Flow
  • Application OnStart and OnEnd
  • ASPCompat mode
  • lt_at_ page aspcompattrue gt
  • Enables access to intrinsic objects

25
ASP.NET Migration Examples
26
Server ComponentsPerformance 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
  • lt_at_ Page ASPCompattrue gt
  • Not necessary for C MTA components

27
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

28
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

29
Tools
30
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/

31
ASP.NET Migration Assistant
32
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

33
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com