ASP.NET 2.0. What is ASP.NET is a server-side scripting language developed by Microsoft is the next...
-
date post
19-Dec-2015 -
Category
Documents
-
view
217 -
download
0
Transcript of ASP.NET 2.0. What is ASP.NET is a server-side scripting language developed by Microsoft is the next...
ASP .NET 2.0
What is ASP .NET is a server-side scripting language developed by
Microsoft is the next generation of ASP (Active Server Pages),
completely new technology, not backward compatible to classic ASP
is part of Microsoft .Net framework runs inside IIS (Internet Information Server) version history: ASP .NET, ASP .NET 2.0, ASP .NET
3.0 an ASP .NET file has the extension “.aspx” as
opposed to “.asp” as in classic ASP the execution and role of “.aspx” files is the same
as in other server-side languages like JSP, PHP, etc.
Microsoft .Net Framework
Microsoft .Net framework is an environment for building, deploying and running web-based and standalone enterprise applications
it contains the following components: programming languages: C#, Visual Basic .Net, J# server technologies and client technologies: ASP .NET,
Windows Forms (Windows desktop solutions),Compact Framework (PDA/Mobile solutions)
development environments: Visual Studio .Net, Visual Web Developer
Differences between ASP .NET and ASP ASP .NET has a new set of programmable
controls, XML-based components, increased performance by running compiled code, event-driven programming
ASP .NET uses ADO .NET for accessing databases, supports full Visual Basic, not VBScript, supports C#, C++ and JScript
ASP .NET has a large set of HTML controls which can be controlled by scripts
ASP .NET contains a new set of programmable object-oriented input controls
all ASP.NET objects on a web page can expose events that can be processed by ASP.NET code
Running ASP .NET
for running ASP .NET code only: .NET Framework and IIS (Microsoft Internet Information Server)is required
the principle of running ASP .NET code is the same as in running other server-side scripts like PHP and JSP
First .aspx example
<html><body><p><%Response.Write(“Hello .Net World!”)%></p></body>
</html>
in classic ASP (and also available in ASP .NET), ASP code is inserted in html code inside the tags “<%…%>”
ASP .NET Server Controls in ASP .NET, ASP code is not placed entirely
inside the html code, but instead is written in separate executable files
server controls are tags understood and run by the server
there are three kinds of server controls: HTML Server Controls - Traditional HTML tags Web Server Controls - New ASP.NET tags Validation Server Controls - For input validation
HTML Server Controls html elements in ASP.NET files are, by default,
treated as text. To make these elements programmable a runat="server" attribute to the html element is required. This attribute indicates that the element should be treated as a server control. The id attribute is added to identify the server control.
all html server controls must be within a <form> tag with the runat="server" attribute. The runat="server" attribute indicates that the form should be processed on the server. It also indicates that the enclosed controls can be accessed by server scripts.
HTML Server Control example<script runat="server"> Sub Page_Load
link1.HRef="http://www.google.com"End Sub
</script>
<html><body>
<form runat="server"><a id="link1" runat="server">Visit Google!</a></form>
</body></html>
Web Server Controls are special tags understood by the server, but they do
not map to any existing HTML element they require a runat=“server” attribute to work <asp:control_name id="some_id" runat="server" /> ex.:<script runat="server">
Sub submit(Source As Object, e As EventArgs)button1.Text="You clicked me!"End Sub
</script><html><body>
<form runat="server"><asp:Button id="button1" Text="Click me!"runat="server" OnClick="submit"/>
</form></body></html>
Validation Server Controls are used to validate user input; if the user input does not pass
validation, it will display an error message each validation control performs a specific type of validation <asp:control_name id="some_id" runat="server" /> ex.:<html><body>
<form runat="server"><p>Enter a number from 1 to 100:<asp:TextBox id="tbox1" runat="server" /><br /><br /><asp:Button Text="Submit" runat="server" /></p><p><asp:RangeValidator ControlToValidate="tbox1“ MinimumValue="1"MaximumValue="100“ Type="Integer“ Text="The value must be from
1 to 100!"runat="server" />
</p></form>
</body></html>
Event handlers ex. Page_Load event handler:<script runat="server">
Sub Page_Loadlbl1.Text="The date and time is " & now()
End Sub
</script>
<html><body><form runat="server">
<h3><asp:label id="lbl1" runat="server" /></h3></form>
</body>
</html>
ASP .NET Web Forms
all server controls must be defined within a <form> tag and this should have the attribute runat=“server”
there can be only one <form runat=“server”> control on a web page
the form is always submitted to the page itself regardless of the action attribute
the method is set to POST by default if not specified, name and id attribute are
automatically assigned by ASP .NET
ASP .NET ViewState
ASP .NET maintains a ViewState (containing all the values of the fields in the form) as a hidden field in the page like this:<input type="hidden" name="__VIEWSTATE"value="dDwtNTI0ODU5MDE1Ozs+ZBCF2ryjMpeVgUrY2eTj79HNl4Q=" />
this is useful when the frame is submitted to the server with an error and you have to go back and correct the input data on the form
maintaining the ViewState is the default setting for Web forms; this can be changed with the directive:<%@ Page EnableViewState="false" %>
asp:TextBox<script runat="server">
Sub change(sender As Object, e As EventArgs)lbl1.Text="You changed text to " & txt1.Text
End Sub</script><html>
<body><form runat="server">
Enter your name:<asp:TextBox id="txt1" runat="server“ text="Hello World!"
ontextchanged="change" autopostback="true"/><p><asp:Label id="lbl1" runat="server" /></p>
</form>
</body></html>
asp:Button<script runat="server">
Sub submit(sender As Object, e As EventArgs)lbl1.Text="Your name is " & txt1.Text
End Sub</script><html>
<body>
<form runat="server">Enter your name:<asp:TextBox id="txt1" runat="server" /><asp:Button OnClick="submit" Text="Submit"
runat="server" /><p><asp:Label id="lbl1" runat="server" /></p>
</form></body></html>
Data binding controls
some controls can be bind to a datasource like a database, an xml file or a script
the data binding list controls are: asp:RadioButtonList asp:CheckBoxList asp:DropDownList asp:ListBox
these controls can contain <asp:ListItem> or they can use the items from a data source
Binding an ArrayList to a asp:RadioButtonList<script runat="server">
Sub Page_Loadif Not Page.IsPostBack then
dim mycountries=New ArrayListmycountries.Add("Norway")mycountries.Add("Sweden")mycountries.Add("France")mycountries.Add("Italy")mycountries.TrimToSize()mycountries.Sort()rb.DataSource=mycountriesrb.DataBind()
end ifend sub
</script><html>
<body><form runat="server">
<asp:RadioButtonList id="rb" runat="server" /></form>
</body></html>
Binding an xml file to a asp:RadioButtonList<%@ Import Namespace="System.Data" %><script runat="server">
sub Page_Load if Not Page.IsPostBack then
dim mycountries=New DataSetmycountries.ReadXml(MapPath("countries.xml"))rb.DataSource=mycountriesrb.DataValueField="value"rb.DataTextField="text"rb.DataBind()
end ifend subsub displayMessage(s as Object,e As EventArgs)
lbl1.text="Your favorite country is: " & rb.SelectedItem.Textend sub
</script><html><body>
<form runat="server"><asp:RadioButtonList id="rb" runat="server"AutoPostBack="True" onSelectedIndexChanged="displayMessage" /><p><asp:label id="lbl1" runat="server" /></p>
</form></body></html>
Creating a Database Connection using ADO .NET
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">sub Page_Load
dim dbconndbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb"))dbconn.Open()
end sub
</script>
Creating a Database Command
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">sub Page_Load
dim dbconn,sql,dbcommdbconn=New
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))
dbconn.Open()sql="SELECT * FROM customers"dbcomm=New OleDbCommand(sql,dbconn)
end sub
</script>
Creating a DataReader
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">sub Page_Load
dim dbconn,sql,dbcomm,dbreaddbconn=New
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))
dbconn.Open()sql="SELECT * FROM customers"dbcomm=New OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()
end sub
</script>
Binding a Datasource to a control<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">sub Page_Load
dim dbconn,sql,dbcomm,dbreaddbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECT * FROM customers"dbcomm=New OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()customers.DataSource=dbreadcustomers.DataBind()dbread.Close()dbconn.Close()
end sub</script>
<html><body>
<form runat="server"><asp:Repeater id="customers" runat="server"><HeaderTemplate><table border="1" width="100%">
<tr><th>Companyname</th><th>Contactname</th><th>Address</th><th>City</th></tr>
</HeaderTemplate><ItemTemplate>
<tr><td><%#Container.DataItem("companyname")%></td><td><%#Container.DataItem("contactname")%></td><td><%#Container.DataItem("address")%></td><td><%#Container.DataItem("city")%></td></tr>
</ItemTemplate><FooterTemplate></table></FooterTemplate>
</asp:Repeater></form>
</body></html>