Title: Introduction to ASP .NET
1Introduction to ASP .NET
2Prehistory of ASP .NET
- Original Internet text based
- WWW static graphical content ? HTML
(client-side) - Need for interactive and animated content ?
Javascript (client-side) - Need for database-driven web sites ? CGI, ASP,
JSP, PHP, ColdFusion (server-side)
3About Processing on the Web
- Hypertext Transfer Protocol (HTTP)
- Request-Response Model
- Statelessness of the web
4browser builds an HTTP request and sends it to
the IP address indicated by the URL.
Web server
Web server on the destination host machine
(identified by IP address) receives the request
and, after any necessary processing, the
requested file is returned.
Safari
5Web Server
- Running on Host
- In Microsoft world this is Internet Information
Server (IIS) - Linux ? Apache
- With ASP and .NET Framework, IIS can produce
dynamic content (automatically-generated
6Technologies for Server Side Processing
- CGI Common Gateway Interface
- Java Server Pages (JSP), Java Servlets
- ActiveX Server Pages (ASP)
- PHP Preprocessor (PHP)
- ASP .NET
Server-side processing enables 3-tier
architectures
7Three-Tier Architectures
- Three layers
- Client
- Application server
- Database server
Browser (with HTML/Javascript)
GUI interface (I/O processing)
Web Server (with ASP .NET)
Business rules
Data storage
DBMS
- Thin Client
- PC just for user interface and a little
application processing. Limited or no data
storage (sometimes no hard drive)
8Three-tier architecture
Thinnest clients
Business rules on separate server
DBMS only on DB server
9Problems with Old ASP
- Code mixing (HTML, Javascript, VBScript inline) ?
hard to understand and maintain - Interpreted ? no compiled ahead of time, slows
processing - ASP .NET allows for both code separation and
pre-compiled processing - Same is true with PHP and JSP
- Frameworks exist for both to enable code
separation
10ASP .NETs improvements over old ASP
- More object-oriented and event-driven
- robust class library
- ability to create more efficient and reusable
code - Multiple Language Support (VB, C, C,
JScript.NET) - via Common Language Runtime
- other languages can be added to the list
- Powerful control objects (server controls, user
controls) - automatic HTML-generators
- Code Separation Support
- can separate HTML code (display) from VB/C code
(server side processing) through use of server or
user controls - use of code-behind files
- Smart Code Output
- automatic generation of browser/device compatible
output - use of form validation controls
- Deployment - easier administration of web sites
- simplicity in installing components
- Use of web.config file for configuration
- and bin directory for Assemblies (DLLs)
11(No Transcript)
12.NET Framework Terms
- NET Framework software framework that runs
primarily on Microsoft Windows. - Framework
- Common Language Runtime (CLR) run time
environment that provides the underlying
infrastructure for Microsoft's .NET framework
(pp17-18) - Assembly a .dll file (dynamic link library)
that contains executable code compiled for the
CLR (pp14-17)
13http//en.wikipedia.org/wiki/.NET_Framework
These compilers generate managed code. Managed
code is code that is run within the Common
Language Infrastructure (CLI).
Common Intermediate Language (CIL) is like
Javas bytecode
Common Language Runtime (CLR) is like Javas
virtual machine
Virtual Execution System (VES) is the simulated
CPU upon which the CLR operates.
Note Visual C can compile into either managed
or unmanaged code. Unmanaged code is compiled
directly to the machine language of the CPU, and
is not part of the CLR