Introduction to ASP.NET - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction to ASP.NET

Description:

Introduction to ASP.NET What is ASP.NET and how is different from ASP ASP: server side technology for creating dynamic web pages using scripting languages eg vb script. – PowerPoint PPT presentation

Number of Views:247
Avg rating:3.0/5.0
Slides: 32
Provided by: JasonC98
Category:

less

Transcript and Presenter's Notes

Title: Introduction to ASP.NET


1
Introduction to ASP.NET
  • What is ASP.NET and how is different from ASP
  • ASP server side technology for creating dynamic
    web pages using scripting languages eg vb script.
  • ASP.NET server side technology for creating
    dynamic web pages using Fully Fledged programming
    languages supported by .NET
  • VB.NET our chosen language for writing ASP.NET
    pages

2
What is .NET?
  • A Microsoft strategy and new technology for
    delivering software services to the desktop and
    to the web
  • Components include
  • MS Intermediate Language all code is complied
    into a more abstract, trimmed version before
    execution. All .NET languages are compiled to
    MSIL the common language of .NET
  • The CLR- common language runtime responsible for
    executing MSIL code interfaces to Windows and
    IIS
  • A rich set of libraries (Framework Class
    Libraries) available to all .NET languages
  • The .NET languages such as C, VB.NET etc that
    conform to CLR
  • ASP.NET is how the Framework is exposed to the
    web, using IIS to manage simple pages of code so
    that they can be complied into full .NET
    programs. These generate HTML for the browser.
  • Built on open protocols (XML, SOAP)
  • Future for development of MS non-MS based
    systems.
  • Also heading towards the Internet Operating
    System

3
Common Language Runtime Type System
  • Compilers use the runtime type system to produce
    type compatible components

Components
C
VB
C
Compilers
Runtime Environment
Common Type System
4
Robust And Secure
  • Native code compilation
  • MSIL
  • No interpreter
  • Install-time or run-time IL to native compilation
  • Code correctness and type-safety
  • IL can be verified to guarantee type-safety
  • No unsafe casts, no uninitialized variables,
    no out-of-bounds array indexing
  • Evidence-based security
  • Policy grants permissions based on evidence
    (signatures, origin)

5
.NET Execution Model
VB
VC
...
Script
IL
NativeCode
Common Language Runtime
Standard JITCompiler
NativeCode
6
Common Language Runtime
  • Lightweight Just-in-time compiler
  • MSIL to Native machine language Can be ported to
    numerous platforms
  • The compiled code is transformed into an
    intermediate language called the Microsoft
    Intermediate Language (MSIL or IL)
  • An integer in Visual Basic .NET or an int in C
    are converted to the same .NET data type, which
    is Int32
  • The IL that is created is the same for all
    languages
  • The assembly is the compiled .NET program
  • The assembly contains the IL along with
    additional information called metadata
  • Metadata contains information about the assembly
  • Use the IL Disassembler (ildasm.exe) to view the
    IL within an assembly

7
Framework Overview
VB
C
C
Visual Studio.NET
JScript

Common Language Specification
Web Forms (ASP.NET)
Win Forms
Data and XML
Base Class Library
Common Language Runtime
8
.NET Framework Architecture
System.WinForms
System.Web
Web Services
Web Forms
Controls
Drawing
ASP.NET Application Services
Windows Application Services
System Base Framework
ADO.NET
XML
SQL
Threading
IO
Net
Security
ServiceProcess
Common Language Runtime
Metadata
Type System
Execution
9
Namespace
  • The base class libraries are organized into
    logical groupings of code called namespaces
  • A namespace is a hierarchical way to identify
    resources in .NET
  • The System object is at the top of the namespace
    hierarchy, and all objects inherit from it
  • ASP.NET System.Web namespace
  • WebForms System.Web.UI namespace
  • HTML Server Controls System.Web.UI.Control.HTMLCo
    ntrol
  • ASP.NET Server Controls System.Web.UI.Control.Web
    Control

10
Importing Namespaces
  • Visual Studio .NET adds references to your
    projects commonly used namespaces by default
  • You can import the namespaces into your page
    using the _at_Import directive
  • The following is the syntax for importing a .NET
    namespace
  • lt_at_ Import NamespaceName gt
  • Below is a sample of how you would import the
    ASP.NET Page class
  • lt_at_ Imports System.Web.UI.Page gt

11
Some ASP.NET namespaces
System Defines fundamental data types eg system.string
System.Collections Definitions and classes for creating various collections
System.IO File reading writing operations
System.Web Support browser/server communication
System.Web.UI Creates the Page object whenever an .aspx page is requested
System.Web.UI.webcontrols Classes and definitions to create server controls
12
ASP.NET class browser
  • ASP.NET provides a means of exposing the .NET
    Framework and its functionality to the WWW
  • Contains a number of pre-built types that take
    input from .NET types and represents them in a
    form for the web (such as HTML)
  • Class browser (over 9000 classes lists the
    namespaces)

13
ASP.NET
  • The latest version of ASP is known as ASP.NET
  • Visual Studio .NET is a developer application
    used to create ASP.NET Web applications
  • There are two main types of Web resources created
    with ASP.NET applications
  • WebForms are ASP.NET pages within an ASP.NET
    application
  • Web Services are ASP.NET Web pages that contain
    publicly exposed code so that other applications
    can interact with them
  • Web Services are identified with the file
    extension .asmx

14
WebForms
  • The ASP.NET WebForm is separated into two logical
    areas
  • The HTML template
  • A collection of code behind the WebForm
  • The HTML template
  • Contains the design layout, content, and the
    controls
  • Creates the user interface, or presentation layer
  • Instructs the browser how to format the Web page
  • Is created using a combination of HTML controls,
    HTML Server controls, Mobile Controls, and
    ASP.NET controls

15
Server Controls
  • HTML Server controls are similar to the HTML
    controls, except they are processed by the server
  • Add runat "server" to the HTML control to
    transform it into an HTML Server control
  • HTML control ltinput type"text"gt
  • HTML Server control
  • ltinput type"text" runat"server"/gt
  • ltinput typeradio runatserver valueYes/gt
    Yes
  • Server-side programs can interact with the
    control before it is rendered as a plain HTML
    control and sent to the browser

16
ASP.NET Controls
  • ASP.NET form controls will create the HTML code
  • ASP.NET Server controls are organized as
  • ASP.NET Form Controls
  • Data Validation Controls
  • User Controls
  • Mobile Controls
  • ASP.NET controls are usually identified with the
    prefix asp followed by the name of the control
  • ASP.NET button
  • ltaspButton id"ShowBtn" runat"server"
    Text"Show the message." /gt

17
HTML Server Vs ASP.NET Server, Controls
  • ASP.NET form controls can interact with
    client-side events such as when the user clicks
    on a button
  • When the event occurs, ASP.NET can trigger a
    script to run on the server
  • ASP.NET form controls also have different
    properties than their HTML server control
    counterparts
  • HTML Server label control
  • Message1.InnerHTML "Product 1"
  • ASP server label control
  • Message2.Text "Product 2"

18
User Controls
  • User controls are external files that can be
    included within another WebForm
  • User controls allow you to reuse code across
    multiple files
  • For example, you can create a user control that
    displays the a navigation bar
  • You can use this control on the home page they
    are often used for creating self-contained code,
    headers, menus, and footers
  • User controls replace the functionality of ASP
    server-side include pages
  • They are identified with the file extension .asmx

19
Other ASP.NET Server Controls
  • Data validation controls
  • A series of controls that validate form data
    without extensive JavaScript programming
  • Mobile controls
  • A series of controls that provide form
    functionality within wireless and mobile devices
  • Literal controls
  • Page content that is not assigned to a specific
    HTML control such as a combination of HTML tags
    and text to the browser

20
Server Controls within Visual Studio .NET
  • In Visual Studio .NET most of the ASP.NET Server
    controls are located on the Web Forms tab in the
    toolbox

Server controls with Visual Studio.NET
21
The Code Behind
  • Server programs are written in a separate file
    known as the code behind the page
  • By separating the programming logic and
    presentation layer, the application becomes
    easier to maintain
  • Only Server controls can interact with the code
    behind the page
  • Written in any ASP.NET compatible language such
    as Visual Basic .NET, C, Perl, or Java
  • Filename is the same as the WebForm filename
  • Add a file extension that identifies the language
  • Visual Basic .NET use .vb (mypage.aspx.vb)
  • C use .cs (mypage.aspx.cs)

22
Code Behind file
  • The location of the code behind the page is
    determined via a property that is set on the
    first line in the page using the _at_Page directive
  • lt_at_ Page Language"vb" Codebehind"WebForm1.vb"
    InheritsMyFirstApp.WebForm1"gt
  • The _at_Page directive allows you to set the default
    properties for the entire page such as the
    default language
  • The CodeBehind property identifies the path and
    filename of the code behind file
  • The Inherits property indicates that the code
    behind the page inherits the page class
  • This page class contains the compiled code for
    this page

23
Compiling the Page Class
  • The compiled code behind the page is the class
    definition for the page
  • A class is a named logical grouping of code
  • The class definition contains the functions,
    methods, and properties that belong to that class
  • In Visual Studio .NET the process of compiling a
    class is called building
  • When you build the application, you compile the
    code into an executable file
  • Visual Studio .NET compiles the code behind the
    page into an executable file and places the file
    in the bin directory

24
Page Class Events
  • The Page Class consists of a variety of methods,
    functions, and properties that can be accessed
    within the code behind the page
  • The first time a page is requested by a client, a
    series of page events occurs
  • The first page event is the Page_Init event which
    initializes the page control hierarchy
  • The Page_Load event loads any server controls
    into memory and occurs every time the page is
    executed

25
Page class events
  • Page_init
  • Page_load
  • Server_Controls
  • Page_prerender
  • Page_Unload

26
Web Services
  • Web Services also provide a means to expose .NET
    functionality on the web but Web Services expose
    functionality via XML and SOAP (cf function
    calls over the web)

27
Web Services
  • If your business partner is Course Technology and
    you want to query that companys product catalog
    from your Web site, you could
  • Post a link
  • Scrape a Web site (use a program to view a Web
    site and capture the source code)
  • Provide a Web Service to their catalog
    application
  • Web Services are used to create
    business-to-business applications
  • Web Services allow you to expose part or all of
    your programs over the Internet. The Web Service
    source file has the extension .asmx
  • A public registry known as UDDI contains
    registered public Web Services. Third party Web
    Services are available at http//www.xmethods.com

28
Web application project files
AssemblyInfo.vb Info about the compiled project file stored in /bin and named project.dll
Global.asax Event handler commands visible to all web forms in a project
Global.asax.resx Define application resources such as text strings, images. Can change without recompiling project.
Global.asax.vb Asp.net code for application events eg session.start
Project.sln Stores links to all project files
Project.suo VS.NET IDE configuration info for the proj.
Project.vbproj Configuration and build settings for project files.
29
Web application project files cont.
Project.vbproj.webinfo URL to project web server
Project.vsdisco Enables search for web services
Styles.css Project style sheet
Web.config Project and folder configuration information
Webform.aspx Web form .aspx fileHtml
Webform.aspx.resx Resources in corresponding web form
Webform.aspx.vb Code written for the form (code behind)
Bin\project.dll Compiled project output file (assembly)
Bin\project.pdb Debugging information used by developer
30
The lab environment.
  • Each machine is set up to be an IIS server
    http//localhost1900/..
  • You create your web projects with Visual
    Studio.Net. VS.NET will create a subdirectory in
    c/inetpub/wwwroot for your project. You must
    copy this subdirectory when moving to another
    machine or home.
  • URL
  • http//localhost1900/MyfirstApp/homepage.aspx
  • Alternative to VS.Net is webmatrix

31
ASP.NET Vs PHP
Feature PHP ASP.NET
HTML Yes Yes
CSS Yes Yes
php Templates Yes UserControls
ServerControls (buttons,grids etc) No Yes
Javascript Yes Yes Validation controls
Database Conn Yes Yes
Cookies Sessions Yes Yes
VIEWSTATE No Yes
POSTBACK No Yes
Write a Comment
User Comments (0)
About PowerShow.com