尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
WEB FORMS
ASP.NET pages (officially known as web forms) are a
vital part of an ASP.NET application.


 Provide the actual output of a web application—the
web pages that clients request and view in their browsers.


 Web forms allow you to create a web application using
the some control-based interface as a Windows
application.
  1
Page Processing
 Goal of ASP.NET developers is to develop
web forms in the same way that Windows
developers can build applications.
 Web applications are very different from
traditional rich desktop/client applications:
      Web applications execute on the server.
      Web applications are stateless.
 2
HTML Forms
 Simplest way to send client-side data to the server is
using a <form> tag
 Inside the <form> tag, can place other <input> tags to
represent basic user interface ingredients




   3
HTML Forms cont..


 ASP.NET uses control model.

    string firstName = txtFirstName.Text;




4
Dynamic User Interface
 Control model makes life easier for retrieving form information

 In classic ASP insert a script block that would write the raw HTML
        string message = "<span style="color:Red">Welcome " +
        FirstName + " " + LastName + "</span>";
        Response.Write(message);

 On the other hand, with Label control in ASP.NET

     <asp:Label id="lblWelcome" runat="server" />
  Now you can simply set its properties

  lblWelcome.Text = "Welcome " + FirstName + " " + LastName;
  lblWelcome.ForeColor = Color.Red;
Note: Not Necessary to KNOW HTML markup syntax.
   5
     Hides the low-level HTML details.
The ASP.NET Event Model
 Classic ASP uses a linear processing model.

Code execution is from start to end.
More code for even simple web page.
(Example of three buttons on HTML form)
 script code must determine which button is clicked
   and execute code accordingly

 ASP.NET provides event-driven model.


  6
The ASP.NET Event Model cont..
Here’s a brief outline of event driven model:
1. Your page runs for the first time. ASP.NET
   creates page, & control objects, the
   initialization code executes, and then the page
   is rendered to HTML and returned to the
   client.

2. At some point, the user does something that
   triggers a postback, such as clicking a button.
   & page is submitted with all the form data.

3. ASP.NET intercepts the returned page and re-
 7 creates the page objects.
The ASP.NET Event Model cont..
4. Next, ASP.NET checks what operation
   triggered the postback, and raises the
   appropriate event procedure.
5. The modified page is rendered to HTML
   and returned to the client. The page
   objects are released from memory.
   If another postback occurs, ASP.NET
   repeats the process in steps 2 through 4.
POSTBACK
1.User request web form from server

2.Web server respond back with requested web form.

3.User enters the data and submits the form to web server.

4.Web server process the form and sends the result back
to the client

Step 3 ????
Step 3 & Step 4 ????

PostBack is the name given to the process of submitting
an ASP.NET page to the server for processing.
Automatic Postbacks
 All client action cannot be handled. e.g. mouse
movement because of server side processing.
 If want to do, can use Java Script or Ajax.
 ASP.NET web controls extend this model with an
automatic postback feature.
 To use automatic postback set the AutoPostBack
property of a web control to true (the default is false)
 ASP.NET adds a JavaScript function to the rendered
HTML page named __doPostBack() (AutoPostBack
=true)

 10
View State
 View state solves another problem that occurs
because of the stateless nature of HTTP—lost
changes.
 ASP.NET has its own integrated state
serialization mechanism.
 ASP.NET examines all the properties, if changed
makes a note of this information in a name/value
collection.
 ASP.NET takes all the information it has
collected and then serializes it as a Base64 string.
  11
View State cont..
The next time the page is posted back, ASP.NET follows these
steps:
1. ASP.NET re-creates the page and control objects based on
   its defaults (first requested state)
2.        Next, ASP.NET deserializes the view state information and
          updates all the controls.
3. ASP.NET adjusts the page according to the posted back
   form data.
4.        Now event-handling code can get involved.
          e.g. code can react to change the page, move to a new
          page, or perform a completely different operation.
     12
View State (First Request) cont..




  13
View State(Postback Request) cont..




14
View State cont..
Note: Even if you set EnableViewState to false, the
control can still hold onto a smaller amount of
view state information.
This privileged view state information is known as
control state, and it can never be disabled.

Note: It is absolutely essential to your success as an
ASP.NET programmer to remember that the web form
is re-created with every round-trip. It does not persist
or remain in memory longer than it takes to render a
single request.
 15
Web Forms Processing Stages
 On the server side, processing an ASP.NET web
form takes place in stages.
 The following list shows the major processing
stages
     • Page framework initialization
     • User code initialization
     • Validation
     • Event handling
     • Automatic data binding
     • Cleanup
16
Web Forms Processing Stages cont..




17
Page Framework Initialization

 ASP.NET first creates the page
 Generates all the controls defined
 ASP.NET deserializes the view state information
(not being requested for the first if it’s postback),
 Next Page.Init event fires (rarely handled by the
web page, because it’s still too early to perform
page initialization)

  18
User Code Initialization
 At this stage of the processing, the Page.Load event is fired.
 The Page.Load event always fires, regardless of whether the
page is being requested for the first time or whether it is being
requested as part of a postback.
 To determine the current state of the page, check the
IsPostBack property of the page, which will be false the first
time the page is requested. Here’s an example:
if (!IsPostBack)
{
        // It's safe to initialize the controls for the first time.
        FirstName.Text = "Enter your name here";
}
   19
Validation
 ASP.NET includes validation controls
that can automatically validate other user
input controls and display error messages.
 Validation controls fire after the page is
loaded but before any other events take
Place.
 validation controls are self-sufficient

 20
Event Handling
 At this point, the page is fully loaded and validated.
 ASP.NET will now fire all the events since the last postback
     Immediate response events
     Change events
 ASP.NET’s event model is still quite different from a traditional Windows
environment
 If you change text in the text box and click submit button, ASP.NET raises all
of the following events (in this order):
        • Page.Init
        • Page.Load
        • TextBox.TextChanged
        • Button.Click
        • Page.PreRender
   21   • Page.Unload
Automatic Data Binding
 When you use the data source controls, ASP.NET
automatically performs updates and queries against your data
source as part of the page life cycle.
 Changes are performed after all the control events have
been handled but just before the Page.PreRender event fires.
 After the Page.PreRender event fires, the data source
controls perform their queries and insert the retrieved data
into linked controls.
 This is the last stop in the page life cycle.
 Page.PreRender is last action before the page is rendered
into HTML.
   22
Cleanup
 At the end of its life cycle, the page is rendered to HTML.
 Page.Unload event is fired.
 At this point, the page objects are still available, but the
final HTML is already rendered and can’t be changed.
 garbage collection service that runs periodically to release
memory tied to objects
 unmanaged resources must be to release explicitly (e.g.
Windows file handles and ODBC database connections)
 When the garbage collector collects the page, the
Page.Disposed event fires.

   23
Summary of Web Forms Processing Stages


       • Page framework initialization
       • User code initialization
       • Validation
       • Event handling
       • Automatic data binding
       • Cleanup


  24
The Page As a Control Container
 To render a page, the web form needs to collaborate with all
its constituent controls.


 When ASP.NET first creates a page, it inspects the .aspx file
for each element it finds with the runat="server" attribute, it
creates and configures a control object, and then it adds this
control as a child control of the page.


 Page.Controls collection contains all child controls on the
page
 ASP.NET models the entire page using control objects,
including elements that don’t correspond to server-side
   25
content.
The Page Header
 Web  form can also contain a single HtmlHead
control, which provides server-side access to the <head>
tag.

 Visual Studio default is to always make the <head> tag
into a server-side control

 Head includes other details such as the title, metadata
tags (useful for providing keywords to search engines)

 Title: This is the title of the HTML page
 StyleSheet: IStyleSheet object that represents inline
  26
styles
The Page Class
 All web forms are actually instances of   the ASP.NET Page class
(System.Web.UI namespace)
 Code-behind class explicitly derives from System.Web.UI.Page.
 means that every web form you create is equipped with an enormous
amount of out-of-the-box functionality
 Page class gives your code the following extremely useful properties:
        • Session
        • Application
        • Cache
        • Request
        • Response
        • Server
        • User
   27   • Trace
Session, Application, and Cache
 The Session object is an instance of the
System.Web.SessionState.HttpSessionState class.
 The Session object provides dictionary-style access to a set of
name/value pairs.
 Session state is often used to maintain user specific information.
 The Application object is an instance of the
System.Web.HttpApplicationState class
 Data is global to the entire application.
 Cache object is an instance of the System.Web.Caching.Cache
class.
 Scalable storage mechanism because ASP.NET can remove
objects if server memory becomes scarce.
   28
Request Object
 An instance of the System.Web.HttpRequest
class.
 Object represents the values and properties of
the HTTP request
 contains all the URLparameters and all other
information sent by a client.
 Much of the information provided by the
Request object is wrapped by higher-level
abstractions.
 Can examine cookies
29
Request Object cont..
   Property                        Description
 AnonymousID      identifies the current user
ApplicationPath   ApplicationPath gets the ASP.NET
      and         application’s virtual directory (URL), while
PhysicalApplicat  PhysicalApplicationPath gets the “real”
    ionPath       directory.
    Browser       provides a link to an
                  HttpBrowserCapabilities object
ClientCertificate HttpClientCertificate object that gets the
                  security certificate for the current request
      Cookies     gets the collection of cookies sent with this
   30
                  request
Request Object cont..
       Property                     Description
Form              Represents the collection of form variables
                  that were posted back to the page.
Headers and       collection of HTTP headers and server
ServerVariables   variables, indexed by name.
IsAuthenticated & These return true if the user has been
IsSecureConnectio successfully authenticated and if the user is
n                 connected over SSL (Secure Sockets Layer).
IsLocal           This returns true if the user is requesting the
                  page from the local computer.
QueryString       provides the parameters that were passed
                  along with thequery string.
  31
Request Object cont..
      Property                Description
Url and       Uri object that represents the current
UrlReferrer   address for
              the page and the page where the user
              is coming from
UserAgent     a string representing the browser type.
UserHostAddre get the IP address and the DNS name
ss and        of the remote client
UserHostName
UserLanguages provides a sorted string array that lists
              the client’s language preferences.
 32
Response object

 Response object is an instance of the
System.Web.HttpResponse class
 HttpResponse does still provide some
important functionality—namely, cookie and
Redirect() method



 33
Response object cont..
    Member                                  Description
BufferOutput        Can set true or false
Cache               HttpCachePolicy object that allows you to configure
                    output caching
Cookies             collection of cookies sent with the response
Expires and         these properties to cache the rendered HTML
ExpiresAbsolute
sClientConnected    Boolean value indicating whether the client is still
                    connected to the server
Redirect()          transfers the user to another page in your application
                    or a different website
Write()             write text directly to the response
                    stream.
BinaryWrite() and   allow you to take binary content from a byte array
WriteFile()
   34
                    or from a file and write it directly to the response
                    stream
Server Object
Server object is an instance of the
System.Web.HttpServerUtility class.
   Member                       Description
MachineName     Computer name of the computer on which
                the page is running.
GetLastError()  Retrieves the exception object for the most
                recently encountered error.
HtmlEncode()    Changes an ordinary string into a string
and             with legal HTML characters (and back
HtmlDecode()    again).
UrlEncode() and Changes an ordinary string into a string
UrlDecode()     with legal URL characters (and back
   35
                again).
Server Object cont..
    Member                     Description
UrlTokenEncode   Performs the same work as
() and           UrlEncode() and UrlDecode(), except
UrlTokenDecode   they work on a byte array that
()               contains Base64-encoded data.
MapPath()        Returns the physical file path that
                 corresponds to a specified virtual file
                 path.
Transfer()       Transfers execution to another web
                 page in the current application.
 36
Common HTML Entities

Result        Description       Encoded
                                 Entity
          Non breaking space     &nbsp;
      <   Less-than symbol        &lt;
      >   Greater-than symbol     &gt;
      &   Ampersand              &amp;
      "   Quotation mark         &amp;
 37
User Object
 User object represents information about the user
  making the request of the web server

 allows you to test that user’s role membership.

 Implements System.Security.Principal.Iprincipal

 can authenticate a user based on specific class
  depends Windows account information using IIS or
 through cookie-based authentication with a
 dedicated login page.

More Related Content

What's hot

Javascript basics
Javascript basicsJavascript basics
Javascript basics
shreesenthil
 
Web controls
Web controlsWeb controls
Web controls
Sarthak Varshney
 
Webservices
WebservicesWebservices
Webservices
Gerard Sylvester
 
Developing an ASP.NET Web Application
Developing an ASP.NET Web ApplicationDeveloping an ASP.NET Web Application
Developing an ASP.NET Web Application
Rishi Kothari
 
Event In JavaScript
Event In JavaScriptEvent In JavaScript
Event In JavaScript
ShahDhruv21
 
Java Script ppt
Java Script pptJava Script ppt
Java Script ppt
Priya Goyal
 
Asp.net.
Asp.net.Asp.net.
Asp.net.
Naveen Sihag
 
Master pages
Master pagesMaster pages
Master pages
teach4uin
 
Learn javascript easy steps
Learn javascript easy stepsLearn javascript easy steps
Learn javascript easy steps
prince Loffar
 
Mvc architecture
Mvc architectureMvc architecture
Mvc architecture
Surbhi Panhalkar
 
Angularjs PPT
Angularjs PPTAngularjs PPT
Angularjs PPT
Amit Baghel
 
JavaScript - Chapter 13 - Browser Object Model(BOM)
JavaScript - Chapter 13 - Browser Object Model(BOM)JavaScript - Chapter 13 - Browser Object Model(BOM)
JavaScript - Chapter 13 - Browser Object Model(BOM)
WebStackAcademy
 
Javascript event handler
Javascript event handlerJavascript event handler
Javascript event handler
Jesus Obenita Jr.
 
Lab #2: Introduction to Javascript
Lab #2: Introduction to JavascriptLab #2: Introduction to Javascript
Lab #2: Introduction to Javascript
Walid Ashraf
 
JSON: The Basics
JSON: The BasicsJSON: The Basics
JSON: The Basics
Jeff Fox
 
Javascript
JavascriptJavascript
Javascript
mussawir20
 
Introduction to php
Introduction to phpIntroduction to php
Introduction to php
shanmukhareddy dasi
 
Jsp chapter 1
Jsp chapter 1Jsp chapter 1
Jsp chapter 1
kamal kotecha
 
Basics of JavaScript
Basics of JavaScriptBasics of JavaScript
Basics of JavaScript
Bala Narayanan
 
Introduction to CSS3
Introduction to CSS3Introduction to CSS3
Introduction to CSS3
Doris Chen
 

What's hot (20)

Javascript basics
Javascript basicsJavascript basics
Javascript basics
 
Web controls
Web controlsWeb controls
Web controls
 
Webservices
WebservicesWebservices
Webservices
 
Developing an ASP.NET Web Application
Developing an ASP.NET Web ApplicationDeveloping an ASP.NET Web Application
Developing an ASP.NET Web Application
 
Event In JavaScript
Event In JavaScriptEvent In JavaScript
Event In JavaScript
 
Java Script ppt
Java Script pptJava Script ppt
Java Script ppt
 
Asp.net.
Asp.net.Asp.net.
Asp.net.
 
Master pages
Master pagesMaster pages
Master pages
 
Learn javascript easy steps
Learn javascript easy stepsLearn javascript easy steps
Learn javascript easy steps
 
Mvc architecture
Mvc architectureMvc architecture
Mvc architecture
 
Angularjs PPT
Angularjs PPTAngularjs PPT
Angularjs PPT
 
JavaScript - Chapter 13 - Browser Object Model(BOM)
JavaScript - Chapter 13 - Browser Object Model(BOM)JavaScript - Chapter 13 - Browser Object Model(BOM)
JavaScript - Chapter 13 - Browser Object Model(BOM)
 
Javascript event handler
Javascript event handlerJavascript event handler
Javascript event handler
 
Lab #2: Introduction to Javascript
Lab #2: Introduction to JavascriptLab #2: Introduction to Javascript
Lab #2: Introduction to Javascript
 
JSON: The Basics
JSON: The BasicsJSON: The Basics
JSON: The Basics
 
Javascript
JavascriptJavascript
Javascript
 
Introduction to php
Introduction to phpIntroduction to php
Introduction to php
 
Jsp chapter 1
Jsp chapter 1Jsp chapter 1
Jsp chapter 1
 
Basics of JavaScript
Basics of JavaScriptBasics of JavaScript
Basics of JavaScript
 
Introduction to CSS3
Introduction to CSS3Introduction to CSS3
Introduction to CSS3
 

Viewers also liked

The ASP.NET Web API for Beginners
The ASP.NET Web API for BeginnersThe ASP.NET Web API for Beginners
The ASP.NET Web API for Beginners
Kevin Hazzard
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENTC# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENT
Dr. Awase Khirni Syed
 
Data controls ppt
Data controls pptData controls ppt
Data controls ppt
Iblesoft
 
data controls in asp.net
data controls in asp.netdata controls in asp.net
data controls in asp.net
subakrish
 
Asp.net
 Asp.net Asp.net
Asp.net
Dinesh kumar
 
Asp.net basic
Asp.net basicAsp.net basic
Asp.net basic
Neelesh Shukla
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
dimuthu22
 
ASP.NET Web API and HTTP Fundamentals
ASP.NET Web API and HTTP FundamentalsASP.NET Web API and HTTP Fundamentals
ASP.NET Web API and HTTP Fundamentals
Ido Flatow
 
Ch 7 data binding
Ch 7 data bindingCh 7 data binding
Ch 7 data binding
Madhuri Kavade
 
Nnnnnn
NnnnnnNnnnnn
Nnnnnn
nautami
 
Standard control in asp.net
Standard control in asp.netStandard control in asp.net
Ajax and ASP.NET AJAX
Ajax and ASP.NET AJAXAjax and ASP.NET AJAX
Ajax and ASP.NET AJAX
Julie Iskander
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
Peter Gfader
 
Asp.Net Control Architecture
Asp.Net Control ArchitectureAsp.Net Control Architecture
Asp.Net Control Architecture
Sundararajan Subramanian
 
Presentation on asp.net controls
Presentation on asp.net controlsPresentation on asp.net controls
Presentation on asp.net controls
Reshi Unen
 
Ajax control asp.net
Ajax control asp.netAjax control asp.net
Ajax control asp.net
Sireesh K
 
Controls in asp.net
Controls in asp.netControls in asp.net
Presentation - Electronic Data Interchange
Presentation - Electronic Data InterchangePresentation - Electronic Data Interchange
Presentation - Electronic Data Interchange
Sharad Srivastava
 
State Management in ASP.NET
State Management in ASP.NETState Management in ASP.NET
State Management in ASP.NET
Shyam Sir
 
ASP.NET State management
ASP.NET State managementASP.NET State management
ASP.NET State management
Shivanand Arur
 

Viewers also liked (20)

The ASP.NET Web API for Beginners
The ASP.NET Web API for BeginnersThe ASP.NET Web API for Beginners
The ASP.NET Web API for Beginners
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENTC# ASP.NET WEB API APPLICATION DEVELOPMENT
C# ASP.NET WEB API APPLICATION DEVELOPMENT
 
Data controls ppt
Data controls pptData controls ppt
Data controls ppt
 
data controls in asp.net
data controls in asp.netdata controls in asp.net
data controls in asp.net
 
Asp.net
 Asp.net Asp.net
Asp.net
 
Asp.net basic
Asp.net basicAsp.net basic
Asp.net basic
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
ASP.NET Web API and HTTP Fundamentals
ASP.NET Web API and HTTP FundamentalsASP.NET Web API and HTTP Fundamentals
ASP.NET Web API and HTTP Fundamentals
 
Ch 7 data binding
Ch 7 data bindingCh 7 data binding
Ch 7 data binding
 
Nnnnnn
NnnnnnNnnnnn
Nnnnnn
 
Standard control in asp.net
Standard control in asp.netStandard control in asp.net
Standard control in asp.net
 
Ajax and ASP.NET AJAX
Ajax and ASP.NET AJAXAjax and ASP.NET AJAX
Ajax and ASP.NET AJAX
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
Asp.Net Control Architecture
Asp.Net Control ArchitectureAsp.Net Control Architecture
Asp.Net Control Architecture
 
Presentation on asp.net controls
Presentation on asp.net controlsPresentation on asp.net controls
Presentation on asp.net controls
 
Ajax control asp.net
Ajax control asp.netAjax control asp.net
Ajax control asp.net
 
Controls in asp.net
Controls in asp.netControls in asp.net
Controls in asp.net
 
Presentation - Electronic Data Interchange
Presentation - Electronic Data InterchangePresentation - Electronic Data Interchange
Presentation - Electronic Data Interchange
 
State Management in ASP.NET
State Management in ASP.NETState Management in ASP.NET
State Management in ASP.NET
 
ASP.NET State management
ASP.NET State managementASP.NET State management
ASP.NET State management
 

Similar to Web forms in ASP.net

ASP.Net Presentation Part1
ASP.Net Presentation Part1ASP.Net Presentation Part1
ASP.Net Presentation Part1
Neeraj Mathur
 
ASP.NET Lecture 1
ASP.NET Lecture 1ASP.NET Lecture 1
ASP.NET Lecture 1
Julie Iskander
 
NET_Training.pptx
NET_Training.pptxNET_Training.pptx
NET_Training.pptx
ssuserc28c7c1
 
Parallelminds.asp.net with sp
Parallelminds.asp.net with spParallelminds.asp.net with sp
Parallelminds.asp.net with sp
parallelminder
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
Mani Chaubey
 
Asp.net control
Asp.net controlAsp.net control
Asp.net control
Paneliya Prince
 
Aspnet architecture
Aspnet architectureAspnet architecture
Aspnet architecture
phantrithuc
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
Vivek chan
 
Asp.Net Page Life
Asp.Net Page LifeAsp.Net Page Life
Asp.Net Page Life
guest812990
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentals
Gopal Ji Singh
 
ASP.NET - Web Programming
ASP.NET - Web ProgrammingASP.NET - Web Programming
C sharp and asp.net interview questions
C sharp and asp.net interview questionsC sharp and asp.net interview questions
C sharp and asp.net interview questions
Akhil Mittal
 
Overview of ASP.Net by software outsourcing company india
Overview of ASP.Net by software outsourcing company indiaOverview of ASP.Net by software outsourcing company india
Overview of ASP.Net by software outsourcing company india
Jignesh Aakoliya
 
Programming web application
Programming web applicationProgramming web application
Programming web application
aspnet123
 
13 asp.net session19
13 asp.net session1913 asp.net session19
13 asp.net session19
Vivek chan
 
Asp.net By Durgesh Singh
Asp.net By Durgesh SinghAsp.net By Durgesh Singh
Asp.net By Durgesh Singh
imdurgesh
 
2310 b 05
2310 b 052310 b 05
2310 b 05
Krazy Koder
 
Walther Ajax4
Walther Ajax4Walther Ajax4
Walther Ajax4
rsnarayanan
 
Asp
AspAsp
Integrating ASP.NET AJAX with SharePoint
Integrating ASP.NET AJAX with SharePointIntegrating ASP.NET AJAX with SharePoint
Integrating ASP.NET AJAX with SharePoint
Rob Windsor
 

Similar to Web forms in ASP.net (20)

ASP.Net Presentation Part1
ASP.Net Presentation Part1ASP.Net Presentation Part1
ASP.Net Presentation Part1
 
ASP.NET Lecture 1
ASP.NET Lecture 1ASP.NET Lecture 1
ASP.NET Lecture 1
 
NET_Training.pptx
NET_Training.pptxNET_Training.pptx
NET_Training.pptx
 
Parallelminds.asp.net with sp
Parallelminds.asp.net with spParallelminds.asp.net with sp
Parallelminds.asp.net with sp
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
 
Asp.net control
Asp.net controlAsp.net control
Asp.net control
 
Aspnet architecture
Aspnet architectureAspnet architecture
Aspnet architecture
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04
 
Asp.Net Page Life
Asp.Net Page LifeAsp.Net Page Life
Asp.Net Page Life
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentals
 
ASP.NET - Web Programming
ASP.NET - Web ProgrammingASP.NET - Web Programming
ASP.NET - Web Programming
 
C sharp and asp.net interview questions
C sharp and asp.net interview questionsC sharp and asp.net interview questions
C sharp and asp.net interview questions
 
Overview of ASP.Net by software outsourcing company india
Overview of ASP.Net by software outsourcing company indiaOverview of ASP.Net by software outsourcing company india
Overview of ASP.Net by software outsourcing company india
 
Programming web application
Programming web applicationProgramming web application
Programming web application
 
13 asp.net session19
13 asp.net session1913 asp.net session19
13 asp.net session19
 
Asp.net By Durgesh Singh
Asp.net By Durgesh SinghAsp.net By Durgesh Singh
Asp.net By Durgesh Singh
 
2310 b 05
2310 b 052310 b 05
2310 b 05
 
Walther Ajax4
Walther Ajax4Walther Ajax4
Walther Ajax4
 
Asp
AspAsp
Asp
 
Integrating ASP.NET AJAX with SharePoint
Integrating ASP.NET AJAX with SharePointIntegrating ASP.NET AJAX with SharePoint
Integrating ASP.NET AJAX with SharePoint
 

Recently uploaded

An All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS MarketAn All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS Market
ScyllaDB
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB
 
Day 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data ManipulationDay 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data Manipulation
UiPathCommunity
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
AlexanderRichford
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
Mydbops
 
Facilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptxFacilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptx
Knoldus Inc.
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
FilipTomaszewski5
 
CTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database MigrationCTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database Migration
ScyllaDB
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
DianaGray10
 
Guidelines for Effective Data Visualization
Guidelines for Effective Data VisualizationGuidelines for Effective Data Visualization
Guidelines for Effective Data Visualization
UmmeSalmaM1
 
ScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking ReplicationScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking Replication
ScyllaDB
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
Real-Time Persisted Events at Supercell
Real-Time Persisted Events at  SupercellReal-Time Persisted Events at  Supercell
Real-Time Persisted Events at Supercell
ScyllaDB
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
UiPathCommunity
 
New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024
ThousandEyes
 
An Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise IntegrationAn Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise Integration
Safe Software
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 
Multivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back againMultivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back again
Kieran Kunhya
 
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
anilsa9823
 

Recently uploaded (20)

An All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS MarketAn All-Around Benchmark of the DBaaS Market
An All-Around Benchmark of the DBaaS Market
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
 
Day 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data ManipulationDay 4 - Excel Automation and Data Manipulation
Day 4 - Excel Automation and Data Manipulation
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
 
Facilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptxFacilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptx
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
 
CTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database MigrationCTO Insights: Steering a High-Stakes Database Migration
CTO Insights: Steering a High-Stakes Database Migration
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
 
Guidelines for Effective Data Visualization
Guidelines for Effective Data VisualizationGuidelines for Effective Data Visualization
Guidelines for Effective Data Visualization
 
ScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking ReplicationScyllaDB Tablets: Rethinking Replication
ScyllaDB Tablets: Rethinking Replication
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
 
Real-Time Persisted Events at Supercell
Real-Time Persisted Events at  SupercellReal-Time Persisted Events at  Supercell
Real-Time Persisted Events at Supercell
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
 
New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024
 
An Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise IntegrationAn Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise Integration
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 
Multivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back againMultivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back again
 
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
 

Web forms in ASP.net

  • 1. WEB FORMS ASP.NET pages (officially known as web forms) are a vital part of an ASP.NET application.  Provide the actual output of a web application—the web pages that clients request and view in their browsers.  Web forms allow you to create a web application using the some control-based interface as a Windows application. 1
  • 2. Page Processing  Goal of ASP.NET developers is to develop web forms in the same way that Windows developers can build applications.  Web applications are very different from traditional rich desktop/client applications:  Web applications execute on the server.  Web applications are stateless. 2
  • 3. HTML Forms  Simplest way to send client-side data to the server is using a <form> tag  Inside the <form> tag, can place other <input> tags to represent basic user interface ingredients 3
  • 4. HTML Forms cont..  ASP.NET uses control model. string firstName = txtFirstName.Text; 4
  • 5. Dynamic User Interface  Control model makes life easier for retrieving form information  In classic ASP insert a script block that would write the raw HTML string message = "<span style="color:Red">Welcome " + FirstName + " " + LastName + "</span>"; Response.Write(message);  On the other hand, with Label control in ASP.NET <asp:Label id="lblWelcome" runat="server" /> Now you can simply set its properties lblWelcome.Text = "Welcome " + FirstName + " " + LastName; lblWelcome.ForeColor = Color.Red; Note: Not Necessary to KNOW HTML markup syntax. 5 Hides the low-level HTML details.
  • 6. The ASP.NET Event Model  Classic ASP uses a linear processing model. Code execution is from start to end. More code for even simple web page. (Example of three buttons on HTML form)  script code must determine which button is clicked and execute code accordingly  ASP.NET provides event-driven model. 6
  • 7. The ASP.NET Event Model cont.. Here’s a brief outline of event driven model: 1. Your page runs for the first time. ASP.NET creates page, & control objects, the initialization code executes, and then the page is rendered to HTML and returned to the client. 2. At some point, the user does something that triggers a postback, such as clicking a button. & page is submitted with all the form data. 3. ASP.NET intercepts the returned page and re- 7 creates the page objects.
  • 8. The ASP.NET Event Model cont.. 4. Next, ASP.NET checks what operation triggered the postback, and raises the appropriate event procedure. 5. The modified page is rendered to HTML and returned to the client. The page objects are released from memory. If another postback occurs, ASP.NET repeats the process in steps 2 through 4.
  • 9. POSTBACK 1.User request web form from server 2.Web server respond back with requested web form. 3.User enters the data and submits the form to web server. 4.Web server process the form and sends the result back to the client Step 3 ???? Step 3 & Step 4 ???? PostBack is the name given to the process of submitting an ASP.NET page to the server for processing.
  • 10. Automatic Postbacks  All client action cannot be handled. e.g. mouse movement because of server side processing.  If want to do, can use Java Script or Ajax.  ASP.NET web controls extend this model with an automatic postback feature.  To use automatic postback set the AutoPostBack property of a web control to true (the default is false)  ASP.NET adds a JavaScript function to the rendered HTML page named __doPostBack() (AutoPostBack =true) 10
  • 11. View State  View state solves another problem that occurs because of the stateless nature of HTTP—lost changes.  ASP.NET has its own integrated state serialization mechanism.  ASP.NET examines all the properties, if changed makes a note of this information in a name/value collection.  ASP.NET takes all the information it has collected and then serializes it as a Base64 string. 11
  • 12. View State cont.. The next time the page is posted back, ASP.NET follows these steps: 1. ASP.NET re-creates the page and control objects based on its defaults (first requested state) 2. Next, ASP.NET deserializes the view state information and updates all the controls. 3. ASP.NET adjusts the page according to the posted back form data. 4. Now event-handling code can get involved. e.g. code can react to change the page, move to a new page, or perform a completely different operation. 12
  • 13. View State (First Request) cont.. 13
  • 15. View State cont.. Note: Even if you set EnableViewState to false, the control can still hold onto a smaller amount of view state information. This privileged view state information is known as control state, and it can never be disabled. Note: It is absolutely essential to your success as an ASP.NET programmer to remember that the web form is re-created with every round-trip. It does not persist or remain in memory longer than it takes to render a single request. 15
  • 16. Web Forms Processing Stages  On the server side, processing an ASP.NET web form takes place in stages.  The following list shows the major processing stages • Page framework initialization • User code initialization • Validation • Event handling • Automatic data binding • Cleanup 16
  • 17. Web Forms Processing Stages cont.. 17
  • 18. Page Framework Initialization  ASP.NET first creates the page  Generates all the controls defined  ASP.NET deserializes the view state information (not being requested for the first if it’s postback),  Next Page.Init event fires (rarely handled by the web page, because it’s still too early to perform page initialization) 18
  • 19. User Code Initialization  At this stage of the processing, the Page.Load event is fired.  The Page.Load event always fires, regardless of whether the page is being requested for the first time or whether it is being requested as part of a postback.  To determine the current state of the page, check the IsPostBack property of the page, which will be false the first time the page is requested. Here’s an example: if (!IsPostBack) { // It's safe to initialize the controls for the first time. FirstName.Text = "Enter your name here"; } 19
  • 20. Validation  ASP.NET includes validation controls that can automatically validate other user input controls and display error messages.  Validation controls fire after the page is loaded but before any other events take Place.  validation controls are self-sufficient 20
  • 21. Event Handling  At this point, the page is fully loaded and validated.  ASP.NET will now fire all the events since the last postback  Immediate response events  Change events  ASP.NET’s event model is still quite different from a traditional Windows environment  If you change text in the text box and click submit button, ASP.NET raises all of the following events (in this order): • Page.Init • Page.Load • TextBox.TextChanged • Button.Click • Page.PreRender 21 • Page.Unload
  • 22. Automatic Data Binding  When you use the data source controls, ASP.NET automatically performs updates and queries against your data source as part of the page life cycle.  Changes are performed after all the control events have been handled but just before the Page.PreRender event fires.  After the Page.PreRender event fires, the data source controls perform their queries and insert the retrieved data into linked controls.  This is the last stop in the page life cycle.  Page.PreRender is last action before the page is rendered into HTML. 22
  • 23. Cleanup  At the end of its life cycle, the page is rendered to HTML.  Page.Unload event is fired.  At this point, the page objects are still available, but the final HTML is already rendered and can’t be changed.  garbage collection service that runs periodically to release memory tied to objects  unmanaged resources must be to release explicitly (e.g. Windows file handles and ODBC database connections)  When the garbage collector collects the page, the Page.Disposed event fires. 23
  • 24. Summary of Web Forms Processing Stages • Page framework initialization • User code initialization • Validation • Event handling • Automatic data binding • Cleanup 24
  • 25. The Page As a Control Container  To render a page, the web form needs to collaborate with all its constituent controls.  When ASP.NET first creates a page, it inspects the .aspx file for each element it finds with the runat="server" attribute, it creates and configures a control object, and then it adds this control as a child control of the page.  Page.Controls collection contains all child controls on the page  ASP.NET models the entire page using control objects, including elements that don’t correspond to server-side 25 content.
  • 26. The Page Header  Web form can also contain a single HtmlHead control, which provides server-side access to the <head> tag.  Visual Studio default is to always make the <head> tag into a server-side control  Head includes other details such as the title, metadata tags (useful for providing keywords to search engines)  Title: This is the title of the HTML page  StyleSheet: IStyleSheet object that represents inline 26 styles
  • 27. The Page Class  All web forms are actually instances of the ASP.NET Page class (System.Web.UI namespace)  Code-behind class explicitly derives from System.Web.UI.Page.  means that every web form you create is equipped with an enormous amount of out-of-the-box functionality  Page class gives your code the following extremely useful properties: • Session • Application • Cache • Request • Response • Server • User 27 • Trace
  • 28. Session, Application, and Cache  The Session object is an instance of the System.Web.SessionState.HttpSessionState class.  The Session object provides dictionary-style access to a set of name/value pairs.  Session state is often used to maintain user specific information.  The Application object is an instance of the System.Web.HttpApplicationState class  Data is global to the entire application.  Cache object is an instance of the System.Web.Caching.Cache class.  Scalable storage mechanism because ASP.NET can remove objects if server memory becomes scarce. 28
  • 29. Request Object  An instance of the System.Web.HttpRequest class.  Object represents the values and properties of the HTTP request  contains all the URLparameters and all other information sent by a client.  Much of the information provided by the Request object is wrapped by higher-level abstractions.  Can examine cookies 29
  • 30. Request Object cont.. Property Description AnonymousID identifies the current user ApplicationPath ApplicationPath gets the ASP.NET and application’s virtual directory (URL), while PhysicalApplicat PhysicalApplicationPath gets the “real” ionPath directory. Browser provides a link to an HttpBrowserCapabilities object ClientCertificate HttpClientCertificate object that gets the security certificate for the current request Cookies gets the collection of cookies sent with this 30 request
  • 31. Request Object cont.. Property Description Form Represents the collection of form variables that were posted back to the page. Headers and collection of HTTP headers and server ServerVariables variables, indexed by name. IsAuthenticated & These return true if the user has been IsSecureConnectio successfully authenticated and if the user is n connected over SSL (Secure Sockets Layer). IsLocal This returns true if the user is requesting the page from the local computer. QueryString provides the parameters that were passed along with thequery string. 31
  • 32. Request Object cont.. Property Description Url and Uri object that represents the current UrlReferrer address for the page and the page where the user is coming from UserAgent a string representing the browser type. UserHostAddre get the IP address and the DNS name ss and of the remote client UserHostName UserLanguages provides a sorted string array that lists the client’s language preferences. 32
  • 33. Response object  Response object is an instance of the System.Web.HttpResponse class  HttpResponse does still provide some important functionality—namely, cookie and Redirect() method 33
  • 34. Response object cont.. Member Description BufferOutput Can set true or false Cache HttpCachePolicy object that allows you to configure output caching Cookies collection of cookies sent with the response Expires and these properties to cache the rendered HTML ExpiresAbsolute sClientConnected Boolean value indicating whether the client is still connected to the server Redirect() transfers the user to another page in your application or a different website Write() write text directly to the response stream. BinaryWrite() and allow you to take binary content from a byte array WriteFile() 34 or from a file and write it directly to the response stream
  • 35. Server Object Server object is an instance of the System.Web.HttpServerUtility class. Member Description MachineName Computer name of the computer on which the page is running. GetLastError() Retrieves the exception object for the most recently encountered error. HtmlEncode() Changes an ordinary string into a string and with legal HTML characters (and back HtmlDecode() again). UrlEncode() and Changes an ordinary string into a string UrlDecode() with legal URL characters (and back 35 again).
  • 36. Server Object cont.. Member Description UrlTokenEncode Performs the same work as () and UrlEncode() and UrlDecode(), except UrlTokenDecode they work on a byte array that () contains Base64-encoded data. MapPath() Returns the physical file path that corresponds to a specified virtual file path. Transfer() Transfers execution to another web page in the current application. 36
  • 37. Common HTML Entities Result Description Encoded Entity Non breaking space &nbsp; < Less-than symbol &lt; > Greater-than symbol &gt; & Ampersand &amp; " Quotation mark &amp; 37
  • 38. User Object  User object represents information about the user making the request of the web server  allows you to test that user’s role membership.  Implements System.Security.Principal.Iprincipal  can authenticate a user based on specific class depends Windows account information using IIS or through cookie-based authentication with a dedicated login page.
  翻译: