Introduction to ASP.NET

Slides:



Advertisements
Similar presentations
Introduction to .NET Framework
Advertisements

Tahir Nawaz Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a.
Introduction to ASP.NET
Introduction to ASP.NET Some references: Beginning ASP.NET using VB.NET; Wrox; 2002 chpt 2. Kalata, K, Introduction to ASP.NET – 2002, chpt 1. Esposito,
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
Web Development in Microsoft Visual Studio Slide 2 Lecture Overview Introduce Visual Studio 2013 Create a first ASP.NET application.
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 1.1 of…
Introduction to ASP.NET What is.NET What is ASP.NET and how is different from ASP –ASP: server side technology for creating dynamic web pages using scripting.
Introduction to ASP.NET, Second Edition2 Chapter Objectives.
Introduction to ASP.NET
Chapter 11 ASP.NET JavaScript, Third Edition. 2 Objectives Learn about client/server architecture Study server-side scripting Create ASP.NET applications.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
ASP.NET
Joe Hummel, PhD Dept of Mathematics and Computer Science Lake Forest College Lecture 8: WebForms — Web-based.
ASP.Net, Web Forms and Web Controls 1 Outline Introduction Simple HTTP Transaction System Architecture Creating and Running a Simple Web Form Example Web.
Chapter 9 Web Applications Copyright © 2011 by The McGraw-Hill Companies, Inc. All Rights Reserved. McGraw-Hill.
Introduction to ASP.NET
9-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.
Tutorial: Introduction to ASP.NET Internet Technologies and Web Application 4 th February 2010.
1 CS 3870/CS 5870 Static and Dynamic Web Pages ASP.NET and IIS.
© 2004 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill/Irwin Programming the Web Using ASP.Net Chapter 2: The ASP.Net Template Dave.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
ASP.NET Dr. Ralph Westfall May, Web Development Problem HTML designed to display static pages only interactive when user clicks links  can’t provide.
ASP.NET INTRODUCTION INTO وزارة التربية و التعليم العالي كلية العلوم و التكنولوجيا قسم علوم الحاسوب و تكنولوجيا المعلومات اعداد الاستاذ: عبد الله محمد.
An Introduction to ASP.NET Ed Dunhill blogs.msdn.com/edunhill SLIDE7.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
ASP.NET The.NET Framework. The.NET Framework is Microsoft’s distributed run-time environment for creating, deploying, and using applications over the.
ASP.NET  ASP.NET is a web development platform, which provides a programming model, a comprehensive software infrastructure and various services required.
© 2008 Dr. Paul Walcott – The University of the West Indies: Cave Hill CampusDr. Paul Walcott COMP6325 Advanced Web Technologies Dr. Paul Walcott The University.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
© Minder Chen, ASP.NET 2.0: Introduction - 1 ASP.NET 2.0 Minder Chen, Ph.D. Framework Base Class Library ADO.NET: Data & XML.
ASP.NET application. Roadmap ASP.NET file types Bin directory Application updates Simple application from start to finish using a virtual directory Behind.
McGraw-Hill © 2009 The McGraw-Hill Companies, Inc. All rights reserved. Programming with Visual Web Developer Chapter 9.
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
Murach’s ASP.NET 4.0/VB, C1© 2006, Mike Murach & Associates, Inc.Slide 1.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Module 4: Creating a Microsoft ASP.NET Web Form. Overview Creating Web Forms Using Server Controls.
Module 1: Working with ASP.NET. Overview Introducing ASP.NET Creating Web Forms Adding ASP.NET Code to a Page Handling Page Events Discussion: ASP vs.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
ASP.NET in Definition: 1.ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites,
BlackBerry Applications using Microsoft Visual Studio and Database Handling.
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
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.
Introduction to ASP.NET What is.NET What is ASP.NET and how is different from ASP –ASP: server side technology for creating dynamic web pages using scripting.
Introduction to ASP.NET DESIGNED BY:- ER.ASHISH PANDEY (EXECUTIVE) (NEW HORIZON INDIA LTD)
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
Introduction to ASP.NET, Second Edition2 Chapter Objectives.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
1 Introducing Web Developer Tools Rapid application development tools ASP.NET-compatible web editors –Visual Studio.NET Professional Edition –Visual Studio.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Introducing the Microsoft® .NET Framework
.NET Omid Darroudi.
ASP.NET Forms.
Web Application Web Application are programs that can be executed either on a Web server or in a Web browser. An Online store accessed through a browser.
Florida Gulf Coast University
Introduction to .NET Framework Ch2 – Deitel’s Book
Haritha Dasari Josue Balandrano Coronel -
Active Server Pages ASP.Net
PHP / MySQL Introduction
Module 1: Getting Started
Chapter 23 – ASP.NET Outline 23.1 Introduction NET Overview
Web Development in Microsoft Visual Studio 2013
Moving from ASP to ASP.NET
Web Development Using ASP .NET
ASP.NET
Module 10: Creating a Web Application with Web Forms
ASP.NET.
ASP.NET Imran Rashid CTO at ManiWeber Technologies.
Presentation transcript:

Introduction to ASP.NET Some references: Beginning ASP.NET using VB.NET; Wrox; 2002 chpt 2. Kalata, K, Introduction to ASP.NET – 2002, chpt 1. Esposito, D.  Programming Microsoft ASP.NET, chpt 1. Morrison, M. and Morrison, J. Database driven web sites (2nd edn). Chpt 6. VS.NET on line documentation + Quickstart tutorials 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

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”

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

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)

Common Language Runtime .NET Execution Model VB VC ... Script Native Code IL Common Language Runtime Standard JIT Compiler Native Code

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

Common Language Specification Common Language Runtime Framework Overview VB C++ C# JScript … Visual Studio.NET Common Language Specification Web Forms (ASP.NET) Win Forms Data and XML Base Class Library Common Language Runtime

.NET Framework Architecture System.Web System.WinForms 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 Type System Metadata Execution

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.HTMLControl ASP.NET Server Controls: System.Web.UI.Control.WebControl

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 @Import directive The following is the syntax for importing a .NET namespace <%@ Import NamespaceName %> Below is a sample of how you would import the ASP.NET Page class <%@ Imports System.Web.UI.Page %>

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

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): http://interdev.csse.monash.edu.au/quickstart/aspplus/samples/classbrowser/vb/classbrowser.aspx

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

WebForms The ASP.NET WebForm is separated into two logical areas: The HTML template A collection of code behind the WebForm 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

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: <input type="text"> HTML Server control: <input type="text" runat="server"/> <input type=”radio” runat=”server” value=”Yes”/> Yes Server-side programs can interact with the control before it is rendered as a plain HTML control and sent to the browser

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: <asp:Button id="ShowBtn" runat="server" Text="Show the message." />

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"

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

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

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

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)

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 @Page directive <%@ Page Language="vb" Codebehind="WebForm1.vb" Inherits=“MyFirstApp.WebForm1"%> The @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

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

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

Page class events Page_init Page_load Server_Controls Page_prerender Page_Unload

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)

Web Services If your business partner is Course Technology and you want to query that company’s 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

How ASP.NET works When .NET is installed, IIS is configured to look for files with the .aspx extension and to use the ASP.NET module (aspnet_isapi.dll) to handle them. ASP.NET parses the .aspx file and arranges it in a predefined class definition and generates an asp.net page object. The page object generates html that is sent back to IIS and then the browser. NOTE: only .aspx files are parsed (if it is pure html don’t save it as an aspx file as it will slow down the server.

ASP.NET samples Page directives: <%@ page language = “VB” debug="true" trace="true“ %> <script language = “VB” runat=“server”> VB.NET code declarations ……….. </script> Message.aspx <html> <head> <title>Inserting ASP.NET code Example</title> </head> <body> Line1: First HTML Line<br /> Line2: Second HTML Line<br /> Line3: Third HTML Line<br /> </body> </html> Note this has no asp code so better to use .html extension

Message2.aspx <script language="VB" runat="server"> Sub Page_Load() Response.Write ("First ASP.NET Line<br />") Response.Write ("Second ASP.NET Line<br />") Response.Write ("Third ASP.NET Line<br />") End Sub </script> <html> <head> <title>Inserting ASP.NET code Example</TITLE> </head> <body> Line1: First HTML Line<br /> Line2: Second HTML Line<br /> Line3: Third HTML Line<br /> </body> </html>

Message3.aspx html> <head><title>Inserting ASP.NET code Example</title></head> <body> Line1: First HTML Line<br /> Line2: Second HTML Line<br /> Line3: Third HTML Line<br /> <script language="VB" runat="server"> Sub Page_Load() Response.Write ("First ASP.NET Line<br />") Response.Write ("Second ASP.NET Line<br />") Response.Write ("Third ASP.NET Line<br />") End Sub </script> </body> </html>

Render or inline code block –interweave1.aspx <html> <head> <title>Interweaving ASP.NET code and HTML Example</title> </head> <body> Line1: First HTML Line<br /> <% Response.Write ("First ASP.NET Line<br />") %> Line2: Second HTML Line<br /> <% Response.Write ("Second ASP.NET Line<br />") %> Line3: Third HTML Line<br /> <% Response.Write ("Third ASP.NET Line<br />") %> </body> </html> NOT RECOMMENDED.

Interweave2.aspx A Server control script language="VB" runat="server"> Sub Page_Load() Message.Text="The ASP.NET line" End Sub </script> <html> <head> <title>Inserting ASP.NET code Example</TITLE> </head> <body> First HTML Line<br/> <asp:label id=Message runat="server"/> <br /> Second HTML Line<br/> </body> </html>

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.

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 file;Html 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

Viewing the Assembly Create a simple class, compile the class into an assembly, then view the class using the IL Disassembler Open Notepad and type the code shown: ' hello.vb - displays hello world ' Created 06/01/2002 Imports System Public Module Hello Sub Main() Dim s1 As String = "1 - Hello World" Console.WriteLine(s1) End Sub End Module ' Run this at the command line ' vbc hello.vb

Using the ILDASM to View the Assembly and Classes

Examples quickstart – webforms Server directives eg trace and debug Intro4 shows VIEWSTATE Intro6 shows a click event Intro7 shows a usercontrol with a calander Intro8 shows a db connection Intro9 & 10 show asp.net templates Intro11shows validation controls Intro13 shows code behind pages Server directives eg trace and debug trace

The lab environment. Each machine is set up to be an IIS server – http://localhost:1900/….. 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://localhost:1900/MyfirstApp/homepage.aspx Alternative to VS.Net is webmatrix Some samples on another machine http://interdev.csse.monash.edu.au/cse2030/ Interdev is not accessible outside the Monash network.

ASP.NET Vs PHP Feature PHP ASP.NET HTML Yes CSS ‘php Templates’ UserControls ServerControls (buttons,grids etc) No Javascript Yes + Validation controls Database Conn Cookies & Sessions VIEWSTATE POSTBACK