|
ASP.NET encourages the programmer to develop
applications using an event-driven GUI
paradigm, rather than in conventional
web-scripting environments like ASP and PHP.
The framework attempts to combine existing
technologies such as JavaScript with
internal components like "Viewstate" to
bring persistent (inter-request) state to
the inherently stateless web environment.
ASP.NET uses the .NET Framework as an
infrastructure. The .NET Framework offers a
managed runtime environment (like Java),
providing a virtual machine with JIT and a
class library.
The numerous .NET controls, classes and
tools can cut down on development time by
providing a rich set of features for common
programming tasks. Data access provides one
example, and comes tightly coupled with
ASP.NET. A developer can make a page to
display a list of records in a database, for
example, significantly more readily using
ASP.NET than with traditional web
technologies like ASP or PHP.
ASPX file format
ASPX is a text file format used as
web-form pages in the .NET
environment. In programming jargon,
the ASPX file typically contains
only static HTML or XHTML code where
the developer places all the
required form fields and text
content for the web page. The
dynamic code that involves request
and response from the server is
placed in an HTML page with a tag or
block <% -- dynamic code -- %> which
is similar to other web development
technologies such as PHP and JSP.
ASP.NET does support inline code
blocks inside an ASPX file, but this
practice is generally discouraged.
When projects are developed with
Microsoft .NET technology, the form
files or web pages with html code
are renamed into ASPX format with
dynamic code inserted inside the
tag. When a client requests
information from the server (for
instance, checking the ticket price
from a travel agent), the ASPX page
with text content and form fields
gets information from the client and
passes on the information to the
server. With the help of the dynamic
code inside the tag, the client gets
the response or the information
(ticket price) requested from the
server.
The ASPX and other resource files
are placed in a virtual host on an
Internet Information Services or
other compatible ASP.NET servers.
When a client requests information,
the .NET framework parses and
compiles the file into a .NET class
and sends the response. Unlike some
other web development technologies,
which compile their files each time
when responding the client, the ASPX
files are compiled only for the
first time when accessed and are
then re-used to reduce the response
time. Developers can also choose to
pre-compile their code before
deployment, eliminating the need for
just-in-time compilation in a live
environment.
[edit]
Other file extensions associated
with ASP.NET include:
* ASCX - custom controls to be
placed onto web pages.
* ASMX - web service pages.
* ASHX - custom HTTP handlers
Advantages of ASP.NET over ASP
* Compiled code means applications
run faster with more design-time
errors trapped at the development
stage.
* Significantly improved run-time
error handling, making use of
exceptions and try-catch blocks.
* User-defined controls allow
commonly used templates, such as
menus.
* Similar metaphors to Windows
applications such as controls and
events, which make development of
rich user interfaces, previously
only found on the desktop, possible.
* An extensive set of controls and
class libraries allows the rapid
building of applications.
* ASP.NET leverages the
multi-language capabilities of the
.NET CLR, allowing web pages to be
coded in VB.NET, C#, J#, etc.
* Ability to cache the whole page or
just parts of it to improve
performance.
* Ability to use the "code-behind"
development model to separate
business logic from presentation.
* If an ASP.NET application leaks
memory, the ASP.NET runtime unloads
the AppDomain hosting the erring
application and reloads the
application in a new AppDomain.
* Session state in ASP.NET can be
saved in a SQL Server database or in
a separate process running on the
same machine as the web server or on
a different machine. That way
session values are not lost when the
web server is reset or the ASP.NET
worker process is recycled.
* Previous versions of ASP.NET (1.0
and 1.1) were criticized for their
lack of standards compliance. The
generated HTML and JavaScript sent
to the client browser would not
always validate against W3C/ECMA
standards. In addition, the
framework's browser detection
feature sometimes incorrectly
identified web browsers other than
Microsoft's own Internet Explorer as
"downlevel" and returned
HTML/JavaScript to these clients
that was crippled or broken.
However, in version 2.0, all
controls generate valid HTML 4.0,
XHTML 1.0 (the default) or XHTML 1.1
output, depending on the site
configuration. Detection of
standards-compliant web browsers is
more robust and support for
Cascading Style Sheets is more
extensive.
* ASP.NET 2.0 produces markup that
passes W3C validation, but it is
debatable as to whether this
increases accessibility, one of the
benefits of a semantic xhtml page +
css representation. Several controls
(eg. the Login controls, the Wizard
control) use html tables for layout
by default. This behavior can be
customized by overriding the default
templates of these controls. |