29
Server-Side Scripting with ASP.Net ISYS 546

Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

  • View
    223

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Server-Side Scripting with ASP.Net

ISYS 546

Page 2: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

ASP.NET

• ASP.NET is a server-side technology for creating dynamic web pages.

• ASP.NET allows you to use a selection of full programming languages. The default language is VB .NET.

• ASP.NET files have a .aspx extension.

Page 3: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

ASP.NET in the .NET Framework

• 1. The client requests a web page.

• 2. The web server locates the page.

• 3. If the page is an ASP.NET page, it is sent to the Common Language Runtime for compilation and execution.

• 4. The HTML produced by the CLR is returned to the browser.

Page 4: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Benefits of Server-Side Technology

• Browser compatibility: Every browser reads HTML.

• Protection of source code.• Controls are server-side objects with properties,

methods and events.• Separating code from content.

– Embedded code– CodeBehind

• Data entered into form fields is preserved in View State.

Page 5: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Elements of an ASP.Net Page

• Directives

• Code blocks

• ASP.NET controls

• HTML tags and text.

• Server-side include directives

Page 6: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Directives

• A directive controls how an ASP.Net page is compiled.– Page directives: Specify default language, enable

tracing and debugging for a page.– <%@ Page Language=“VB” %>, <%@ Page Language=“C#” %>– <%@ Page Trace=“True” %>

– Imports name spaces– To process Access database, we need to import:– <%@ Import Namespace=“System.Data” %>– <%@ Import Namespace=“System.Data.Oledb” %>

Page 7: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Inserting ASP.NET Code into Web Pages

• Place ASP.NET code between <script> and </script> with a RUNAT attribute.– <script language=“VB” runat=“server”>

• Your script

– </script>

• Inline Code Block: ASP code is placed between <% and %>.– <p>The time is now <%=Now.TimeOfDay()%></p>– <p>The time is now <% response.write(Now.TimeOfDay())%></p>

• “=“ is shorthand for response.write

• Server-side comments:– <%--

• Comments

– --%>

• CodeBehind

Page 8: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Server-Side Include

• To include a file in an asp.net page:– <!-- #include file="testreqformnet.aspx" -->

• Demo: timeNow.aspx

Page 9: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

ASP.NET Object Model

Client Server

Request Object

Response Object

Server Object

SessionObject

Application

Object

Page 10: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

ASP.NET Request Object• When a page is requested, much

information is passed along with the request, such as the URL, queryString, and data from a form. The request object allows you to get the information passed along with the request.

• It is created from the System.Web.HttpRequest class.

Page 11: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Request Object Collections• QueryString

– http://my.com/Target.htm?CustID=C1&CustName=Chao– cid = Request.queryString(“CustID”)– cName=Request.queryString(“CustName”)

• Form– A form with two text boxes:CustID, CustName– cid = Request.Form(“CustID”)– cName=Request.Form(“CustName”)

• Cookies• ClientCertificates• Path, ApplicationPath, PhysicalApplicationPath,

etc.• Demo: testReqForm.htm, testReqForm.aspx

Page 12: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

ASP.NET Response Object

• This object allows you to send information back to client.

• It is created from the System.Web.HttpResponse class.

• Properties:– Buffer– Cookies (a collection)

• Methods:– Response.Write (“…..”), Response.WriteFile( ) – write

the contents of a file to the HTML output stream.– Response.Clear(), Response.Flush(): clear/flush buffer– Response.Redirect (“URL”)– Demo:TestReqForm.asp

Page 13: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Buffer

• When ASP.Net is running the code, it gradually builds up the HTML that will be sent back to the browser. As the HTML is generated, it is placed in a buffer. Normally, the HTML is held in the buffer so that it isn’t sent to the browser until the page finishes executing.

• Response.Buffer: The default value for this property is true which means the page is buffered and sent in one block.– Response.Buffer=False sends html as it is

generated.

Page 14: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Code Example: Process Form Dataresponse.write ("<h1> cid=" & request.form("cid")& "</h1><br>“)

response.write ("<h1> cname=" & request.form("cname")& "</h1><br>“)

response.write ("<h1> hidden variable=" & request.form("hidden1")& "</h1><br>“)

if request.form("C1")="ON" then

response.write ("<h1>You select checkbox 1</H1><br>“)

end if

if request.form("C2")="ON" then

response.write ("<h1>You select checkbox 2</H1><br>“)

end if

if request.form("R1")="V1" then

response.write ("<h1>You select Radio 1</H1><br>“)

else

response.write ("<h1>You select Radio 2</H1><br>“)

end if

response.write ("<h1> listBox=" & request.form("D1")& "</h1><br>“)

%>

Page 15: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

The Application and Session Objects

• Application state: A central, site-wide store of variables that we can get from any page.

• A session is a single visit to a web site, and normally includes visits to a number of pages. Each time a visitor comes to your web site, a session object is created for the visitor. Session state is a store of variables that relates to a session.

Page 16: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Examples of Using the Application and Session Objects

• Examples of session variables are: user’s id, user’s name, Shopping cart, etc.

• Examples of application variables are: visitor counter, number of login attempts, etc.

Page 17: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Working with the Application and Session

• To place a value into the Application and Session simply assign it a key and then assign the value:– Application (“Name”)=“Smith”

– Session (“Age”)=25

• To read values from the Application and Session:– Cname=Application(“Name”)

– myAge = Session(“Age”)

• To remove an item, or all items: Remove, RemoveAll()– Application.Remove(“Name”)

– Session.RemoveAll()

Page 18: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

The Events of the Application and Session Objects

• Application_OnStart– Web site start, and the first view

• Application_OnEnd– Web site shut down

• Session_OnStart

• Session_OnEnd

Page 19: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

The Global.ASAX File

• Every ASP.NET application has this special script file.

• Must reside in the web site’s root directory.• It can contain script code that pertains to the

application, or each session.• The event handler of the application and session

objects must be placed in the Global.asax file.– As the user browses your site, utilize the information

regarding the user’s preferences to display information.

• Note: Use a text editor to edit Global.ASAX file.

Page 20: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Web Form vs HTML Form

• HTML Form: A web page that contains one or more HTML form controls such as textbox, checkbox, dropdown list, and button inside an HTML <form> tag.

• Web Form: A web page that contains:– ASP.NET server controls, and/or HTML form

controls inside a <form runat=“server”> tag.– ASP.NET code that produces dynamic content

to be displayed within the web form.

Page 21: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Web Form Events• Every time a page is called the page object goes

through a series of stage: initializing, loading, processing and disposing of information. It happens every time a round trip to theserver occurs.– Page_Init– Page_Load: Occurs when a page is visible.– Control Events– Page_Unload

• Demo: web form with regular HTML controls – ASPNET/TestRequestFormHTML.ASPX

• Note: Without the Action attribute, a webform is handled by itself.

Page 22: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

ASP.NET Server Controls

• Intrinsic Controls: These controls correspond to their HTML counterparts. – Ex. Textbox, listbox, button, etc.

• Data-Centric Controls: Controls used for binding and displaying data from a data source, such as the DataGrid control.

• Rich Controls: Such as Calendar, AdRotator.• Validation Controls: Such as

RequiredFieldValidator.• Namespace:System.Web.UI.Webcontrols

Page 23: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Benefits of Using ASP.NET Intrinsic Server Controls

• They are programmable objects.– Respond to events– Have properties

Page 24: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

The <asp:label> Control

• An alternative way of displaying text on a web page.

• Properties:– ID– BackColor, ForeColor, Height, Width– Text– Visible

Page 25: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Other Intrinsic Controls

• <asp:textbox/>– Demo: ASPNET/TestTextBox.aspx

• <asp:dropdownlist/>– Demo: TestDropdownlist.aspx

• <asp:listbox/>– Demo:TestListBox.aspx

• <asp:radiobuttonlist/>• <asp:checkboxlist/>• <asp:button/>

Page 26: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Server Control Events

• Onload: Occurs when the control has loaded into the window.

• onUnload

• OnClick: When the button control is clicked.

• OnInit: When the web page is first initialized.

Page 27: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

Postback

• Postback is the process by which the browser posts information back to the server telling the server to handle the event, the server does so and sends the resulting HTML back to the browser.

Page 28: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

The effects of Postback

• Remember the state of the form by adding a hidden _VIEWSTATE variable.

• Enable to write event handler.– Sub dialing(Sender as object, E as EventArgs)

• Sender: Object that raises the event• E: Information about the state of the event.

• Page.ISPostBack property.– IF Not Page.ISPostBack Then

• This is the first time the page is loaded.

• Demo: Dialing.aspx

Page 29: Server-Side Scripting with ASP.Net ISYS 546. ASP.NET ASP.NET is a server-side technology for creating dynamic web pages. ASP.NET allows you to use a selection

<script runat="server">

sub clickHandler(Sender As Object, E As EventArgs)

mpay.text=cstr((cdbl(loan.text)*cdbl(rate.text)/12)/(1-(1+cdbl(rate.text)/12)^(-12*cdbl(term.text))))

end sub

</script>

<html>

<body>

<asp:label id="message" runat="server" />

<br />

<form runat="server">

Enter amount: <asp:textbox id="Loan" runat="server" /> <br />

Eneter interest rate: <asp:textbox id="Rate" runat="server" /> <br />

Enter term: <asp:textbox id="Term" runat="server" /> <br />

MonthlyPayment: <asp:textbox id="MPay" runat="server" />

<br />

<br />

<br />

<asp:Button id="Button1" Text="Submit" onClick="ClickHandler" runat="server"/><br />

</form>

</body>

</html>