SlideShare ist ein Scribd-Unternehmen logo
1 von 69
ASP.NET 4.0
Julie Iskander
MSC. Communication and Electronics
Lab Setup
 Windows 7 (not limited edition)
 IIS 7.x
 MS SQL Server 2008 +
 MS Visual Studio 2010 +
Lecture Outlines
 Introduction to the Web
 ASP.NET overview
 ASP.NET Controls
 Page Class
Introduction to the
Web
Introduction to the Web
 Client/Server Architecture
 Web Technologies (Client Side Versus
Server Side)
Client/Server Architecture
 What is a web client?
 What is a web server?
 Web server examples (IIS, Apache,
nginx,GWS, lighttpd…………etc.)
Client/Server Architecture
Web Technologies
Client Side and Server Side
ASP.NET Overview
ASP.NET Overview
 What is ASP.NET?
 ASP.NET and MS Visual Studio
 Example
 How do ASP.NET works?
 PostBack
 Example
What is ASP.NET?
 ASP.NET is a free web framework for building
WebSites and WebApplications using HTML,
CSS and JavaScript and .Net Framework.
 Microsoft definition from www.asp.net
 ASP.NET is a WebApplication framework
developed by Microsoft to allow programmers
to build dynamic WebSites, WebApplications
and WebServices.
 First released, January 2002 with .NET
Framework 1.0, and is the successor to
Microsoft’s ASP technology.
 From Wikipedia.com
ASP.NET and MS. Visual
Studio
 Unified web development model for building
web applications.
 A new programming model and
infrastructure.
 Separates code from HTML
 Provides a GUI designer and a fully
integrated debugging support.
 Is a compiled, .NET based environment.
 Event-driven model
 Applications are written in any .NET
compatible language (VB.NET, C#,…., etc.)
ASP.NET and MS. Visual
Studio
 ASP.NET supports three approaches
to build web sites:
◦ Web Pages using WebMatrix
◦ MVC
◦ Web Forms
ASP.NET and MS. Visual
Studio
Convert from an HTML to an aspx page
Define: RoundTrip, PostBack
PostBack
 An HTTP POST to the same page that
the form is on.
 The contents of the form are POSTed
back to the same URL as the form.
 Allows a page to perform validation
and processing on its own form data.
PostBack
ASP.NET Coding Model
 Inline Code Model
 Code Behind Model
◦ We work with this model for better
organization of code and separation of
concerns
ASP.NET
 ASP.NET is OO so everything is represented with classes
and objects
 The application starts once the first request to the application
and must not be restarted often, except for maintenance.
 The page is compiled and cached on first request.
 Each Application has a virtual directory on the web server.
 ASP.NET is event-driven. There are:
1. global application events.
2. page related events
3. control related events
 Note : Eventually, the page is rendered
into HTML.
How do ASP.NET works?
 Runs on the web server.
 Renders appropriate markup (HTML) to
the requesting browser.
 Completely object-oriented.
 Works with HTML elements using
properties, methods, and events.
 Controls look and feel through skins,
themes and master-pages
How do ASP.NET works?
 A simple request flow:
1. A page is requested by a client
2. Web server sends it to the worker process
(w3wp.exe)
3. Worker process processes the request and
returns response
a. Instantiates a page object
b. Run page events
c. Instantiates control objects
d. Run control events
e. Render page to html
f. Destroys page object
4. Web server sends response to the client
How do ASP.NET works?
 HTTP is a stateless protocol.
 In ASP.NET, after page rendering to
HTML, the page objects is destroyed.
 However, ASP.NET has state
management techniques using session
state, view state, cookies, query
string,…… to save user information and
controls state.
ASP.NET Page Object
Generation
 A merge between the generated code,
and the partial class you write in the
*.aspx.cs file
ASP.NET Controls
ASP.NET Controls
 HTML Controls
 HTML Server Controls
 Web Controls
HTML Controls
 Ordinary XHTML tags
 Stateless
 Aren’t accessed in server code except
if runat=“server” attribute is added
 HTML Server Control
HTML Server Controls
 Equivalents for standard HTML elements.
 Provide an object interface for HTML
elements.
 Retain their state between postbacks
 The HTML Control Classes defined in the
System.Web.UI.HtmlControls namespace.
 Fire server-side events
◦ ServerClick  actually post back the page,
◦ ServerChange  it doesn’t occur until the
page is posted back.
HTML Server Controls
Web Controls
 Provide Windows closely-resembled
controls.
 Feature user interface elements that
may have/haven’t a direct HTML
equivalent, such as the Label,
TextBox, GridView, Calendar, and
validation controls.
 Adaptive rendering
Web Controls
Web Controls
Convert from an HTML to an aspx page
Remember
The web form is
recreated with every
round-trip. It doesn’t
persist or remain in
memory longer than it
takes to render a single
request.
Remember
Only one form can
has a runat=server
attribute in each
page
View State
 ASP.NET has an integrated state
serialization mechanism.
 Hidden field to store information, in a
compressed format, about the state of
every control in the page.
 Advantage free server resources
 Disadvantage  bigger page size,
longer receive and
post time
View State
 Serialization is the process of
converting an object into a stream of
bytes in order to persist it to memory,
a database, or a file. Its main purpose
is to save the state of an objet in order
to be able to recreate it when needed.
The reverse process is called
deserialization.
 ViewState is serialized as a Base64
string
Viewstate
 Enable ViewState property, to enable
the storage of controls values.
◦ EnableViewState=false, a small amount
of viewstate info is still stored
(controlstate), it can never be disabled.
◦ EnableViewstate=false, has effect on
datagrids
Page Class
Page Class
 Page Lifecycle
 Page Class properties
 Page as a Container
 Event Model
 How PostBack Events Work?
Page Life Cycle
Convert from an HTML to an aspx page
Page Class
 Inherits System.Web.UI.Page
 Basic Property
◦ IsPostBack :
 boolean
◦ Request:
 HttpRequest object info about the user’s browser, to
transmit information from one page to another using
query string, to RETRIEVE cookies,
◦ Response:
 HttpResponse object to redirect to a different web
page, to CREATE cookies.
◦ Server:
 HttpServerUtility object tasks as to encode text
Sending user to another
page
Response.Redirect() Server.Transfer()
 Sends a redirect msg to
client, which then sends
a request for the new
page (round trip)
 Can redirect to any page
in the website or any
absolute URL.
 Client Browser reflects
the URL Change
 Starts processing the
new page and sends the
rendered HTML.
 Can’t access pages
outside web application,
or non-ASP.NET page.
 Client Browser URL isn’t
changed  no bookmark
support
Page As A Control Container
 After creating page object
 Foreach element with runat=server
attr.
◦ Create control object
◦ Configure properties
◦ Add to controls collection
of the page
 The same happened recursively for
nested controls
Page As A Control Container
 Page.Controls
 Page.FindControl(“ControlID”);
Convert from an HTML to an aspx page
AVOID
INITIAIZING IN
CODE, USE
CONTROL TAG
PROPERTIES.
Remember:
Initializing a control in
Page.Load counts as a
change and is stored in
the viewstate.
Events Model
 AutoPostBack
 Events, Event Handling happens in
two ways:
Wait for next postback
A single postback results
in several change events,
which fire one
after the other, in an
undetermined order.
Automatic postback
Force a control to
postback immediately.
How PostBack Events Work?
How PostBack Events Work?
 On Server Side:
◦ ASP.NET re-creates the Page object.
◦ ASP.NET retrieves state info from the hidden viewstate field to
update the controls.
◦ The Page.Load event is fired.
◦ The appropriate change events are fired for the controls.
◦ The Page.PreRender event fires, and the page is rendered.
◦ The Page.Unload event is fired.
◦ The new page is sent to the client.
Reading Assignment 1
 ASP.NET Page Life Cycle Overview ,
http://msdn.microsoft.com/en-
us/library/ms178472.aspx
 View State Chunking
Report #1
 What is the difference between a web
page and a web site and a web
application?
 What’s the difference between
Website project and web application
project in visual studio?
Lab #1
The aim of the labs is to create a
website to sell books, the site will be
called Bookies.com.
 First I need to register my data (name,
gender, age, preferences, country, city)
(register.aspx)
 Then I will browser through books
images and titles that are put in a table
structure by default 2 rows and 2
columns with a more link for more data.
Lab hints
 Lab steps:
◦ Put your controls
◦ Add styles necessary
◦ Start adding functionality
 Use html controls whenever possible
 Html hints
◦ Search for fieldset and legend tags
 Use
◦ Request.QueryString
◦ HyperLink.NavigationUrl
◦ HyperLink.Enabled
 Enjoy ASP.NET!!!
Report #1
 What is the difference between a web
page and a web site and a web
application?
 What’s the difference between
Website project and web application
project in visual studio?
REFERENCES
 [1] Beginning ASP.NET 4 In C# 2010, Matthew
Macdonald, Apress
 [2] Web Application Architecture Principles, Protocols
And Practices, Leon Shklar And Richard Rosen, Wiley
 [3] Professional AS P.NE T 4 In C# And VB, Bill Evjen,
Scott Hanselman And Devin Rader, Wiley
 [4] Pro ASP.NET In C# 2010, Fourth Edition,matthew
Macdonald, Adam Freeman, And Mario Szpuszta,
Apress
 http://asp.net-tutorials.com/
 http://www.asp.net/
 http://msdn.microsoft.com/en-us/library/ee532866.aspx
back

Weitere ähnliche Inhalte

Was ist angesagt?

JavaScript - An Introduction
JavaScript - An IntroductionJavaScript - An Introduction
JavaScript - An IntroductionManvendra Singh
 
Server Controls of ASP.Net
Server Controls of ASP.NetServer Controls of ASP.Net
Server Controls of ASP.NetHitesh Santani
 
Introduction To Dotnet
Introduction To DotnetIntroduction To Dotnet
Introduction To DotnetSAMIR BHOGAYTA
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web APIhabib_786
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation洪 鹏发
 
JavaScript - Chapter 8 - Objects
 JavaScript - Chapter 8 - Objects JavaScript - Chapter 8 - Objects
JavaScript - Chapter 8 - ObjectsWebStackAcademy
 
Java Server Pages(jsp)
Java Server Pages(jsp)Java Server Pages(jsp)
Java Server Pages(jsp)Manisha Keim
 
Introduction to Javascript
Introduction to JavascriptIntroduction to Javascript
Introduction to JavascriptAmit Tyagi
 
Asp.net architecture
Asp.net architectureAsp.net architecture
Asp.net architectureIblesoft
 
JavaScript Programming
JavaScript ProgrammingJavaScript Programming
JavaScript ProgrammingSehwan Noh
 
ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1Kumar S
 

Was ist angesagt? (20)

Java Script ppt
Java Script pptJava Script ppt
Java Script ppt
 
Advanced Cascading Style Sheets
Advanced Cascading Style SheetsAdvanced Cascading Style Sheets
Advanced Cascading Style Sheets
 
JavaScript - An Introduction
JavaScript - An IntroductionJavaScript - An Introduction
JavaScript - An Introduction
 
Basics of JavaScript
Basics of JavaScriptBasics of JavaScript
Basics of JavaScript
 
Server Controls of ASP.Net
Server Controls of ASP.NetServer Controls of ASP.Net
Server Controls of ASP.Net
 
Introduction To Dotnet
Introduction To DotnetIntroduction To Dotnet
Introduction To Dotnet
 
Web forms in ASP.net
Web forms in ASP.netWeb forms in ASP.net
Web forms in ASP.net
 
Php Presentation
Php PresentationPhp Presentation
Php Presentation
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
 
JavaScript
JavaScriptJavaScript
JavaScript
 
[Final] ReactJS presentation
[Final] ReactJS presentation[Final] ReactJS presentation
[Final] ReactJS presentation
 
JavaScript - Chapter 8 - Objects
 JavaScript - Chapter 8 - Objects JavaScript - Chapter 8 - Objects
JavaScript - Chapter 8 - Objects
 
Jsp ppt
Jsp pptJsp ppt
Jsp ppt
 
Java Server Pages(jsp)
Java Server Pages(jsp)Java Server Pages(jsp)
Java Server Pages(jsp)
 
Introduction to Javascript
Introduction to JavascriptIntroduction to Javascript
Introduction to Javascript
 
Asp.net architecture
Asp.net architectureAsp.net architecture
Asp.net architecture
 
JavaScript Programming
JavaScript ProgrammingJavaScript Programming
JavaScript Programming
 
Asp.net.
Asp.net.Asp.net.
Asp.net.
 
An Introduction To REST API
An Introduction To REST APIAn Introduction To REST API
An Introduction To REST API
 
ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1
 

Ähnlich wie ASP.NET Lecture 1

ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)Hatem Hamad
 
ASP.Net Presentation Part1
ASP.Net Presentation Part1ASP.Net Presentation Part1
ASP.Net Presentation Part1Neeraj Mathur
 
03 asp.net session04
03 asp.net session0403 asp.net session04
03 asp.net session04Vivek chan
 
Asp.net server controls
Asp.net server controlsAsp.net server controls
Asp.net server controlsRaed Aldahdooh
 
Lessons from the Trenches: Engineering Great AJAX Experiences
Lessons from the Trenches: Engineering Great AJAX ExperiencesLessons from the Trenches: Engineering Great AJAX Experiences
Lessons from the Trenches: Engineering Great AJAX Experiencesgoodfriday
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET PresentationRasel Khan
 
Parallelminds.asp.net with sp
Parallelminds.asp.net with spParallelminds.asp.net with sp
Parallelminds.asp.net with spparallelminder
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentalsGopal Ji Singh
 
Asp interview Question and Answer
Asp interview Question and Answer Asp interview Question and Answer
Asp interview Question and Answer home
 
Asp introduction
Asp introductionAsp introduction
Asp introductionSireesh K
 
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 indiaJignesh Aakoliya
 
DevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetDevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetAdil Mughal
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NETPeter Gfader
 

Ähnlich wie ASP.NET Lecture 1 (20)

ASP.NET Lecture 2
ASP.NET Lecture 2ASP.NET Lecture 2
ASP.NET Lecture 2
 
ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)
 
Walther Ajax4
Walther Ajax4Walther Ajax4
Walther Ajax4
 
ASP.Net Presentation Part1
ASP.Net Presentation Part1ASP.Net Presentation Part1
ASP.Net Presentation Part1
 
Asp
AspAsp
Asp
 
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
 
DITEC - E-Commerce & ASP.NET
DITEC - E-Commerce & ASP.NETDITEC - E-Commerce & ASP.NET
DITEC - E-Commerce & ASP.NET
 
Asp.net server controls
Asp.net server controlsAsp.net server controls
Asp.net server controls
 
Lessons from the Trenches: Engineering Great AJAX Experiences
Lessons from the Trenches: Engineering Great AJAX ExperiencesLessons from the Trenches: Engineering Great AJAX Experiences
Lessons from the Trenches: Engineering Great AJAX Experiences
 
Lessons
LessonsLessons
Lessons
 
NET_Training.pptx
NET_Training.pptxNET_Training.pptx
NET_Training.pptx
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Parallelminds.asp.net with sp
Parallelminds.asp.net with spParallelminds.asp.net with sp
Parallelminds.asp.net with sp
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentals
 
Asp interview Question and Answer
Asp interview Question and Answer Asp interview Question and Answer
Asp interview Question and Answer
 
Asp introduction
Asp introductionAsp introduction
Asp introduction
 
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
 
DevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetDevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp Net
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 

Mehr von Julie Iskander (20)

HTML 5
HTML 5HTML 5
HTML 5
 
Data structures and algorithms
Data structures and algorithmsData structures and algorithms
Data structures and algorithms
 
C for Engineers
C for EngineersC for Engineers
C for Engineers
 
Design Pattern lecture 3
Design Pattern lecture 3Design Pattern lecture 3
Design Pattern lecture 3
 
Scriptaculous
ScriptaculousScriptaculous
Scriptaculous
 
Prototype Framework
Prototype FrameworkPrototype Framework
Prototype Framework
 
Design Pattern lecture 4
Design Pattern lecture 4Design Pattern lecture 4
Design Pattern lecture 4
 
Design Pattern lecture 2
Design Pattern lecture 2Design Pattern lecture 2
Design Pattern lecture 2
 
Design Pattern lecture 1
Design Pattern lecture 1Design Pattern lecture 1
Design Pattern lecture 1
 
Ajax and ASP.NET AJAX
Ajax and ASP.NET AJAXAjax and ASP.NET AJAX
Ajax and ASP.NET AJAX
 
jQuery
jQueryjQuery
jQuery
 
ASP.NET Lecture 5
ASP.NET Lecture 5ASP.NET Lecture 5
ASP.NET Lecture 5
 
ASP.NET lecture 8
ASP.NET lecture 8ASP.NET lecture 8
ASP.NET lecture 8
 
ASP.NET Lecture 7
ASP.NET Lecture 7ASP.NET Lecture 7
ASP.NET Lecture 7
 
ASP.NET Lecture 6
ASP.NET Lecture 6ASP.NET Lecture 6
ASP.NET Lecture 6
 
ASP.NET Lecture 4
ASP.NET Lecture 4ASP.NET Lecture 4
ASP.NET Lecture 4
 
ASP.NET Lecture 3
ASP.NET Lecture 3ASP.NET Lecture 3
ASP.NET Lecture 3
 
AJAX and JSON
AJAX and JSONAJAX and JSON
AJAX and JSON
 
Object Oriented JavaScript
Object Oriented JavaScriptObject Oriented JavaScript
Object Oriented JavaScript
 
DOM and Events
DOM and EventsDOM and Events
DOM and Events
 

Kürzlich hochgeladen

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 

Kürzlich hochgeladen (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 

ASP.NET Lecture 1

  • 1. ASP.NET 4.0 Julie Iskander MSC. Communication and Electronics
  • 2. Lab Setup  Windows 7 (not limited edition)  IIS 7.x  MS SQL Server 2008 +  MS Visual Studio 2010 +
  • 3. Lecture Outlines  Introduction to the Web  ASP.NET overview  ASP.NET Controls  Page Class
  • 5. Introduction to the Web  Client/Server Architecture  Web Technologies (Client Side Versus Server Side)
  • 6. Client/Server Architecture  What is a web client?  What is a web server?  Web server examples (IIS, Apache, nginx,GWS, lighttpd…………etc.)
  • 10. ASP.NET Overview  What is ASP.NET?  ASP.NET and MS Visual Studio  Example  How do ASP.NET works?  PostBack  Example
  • 11.
  • 12. What is ASP.NET?  ASP.NET is a free web framework for building WebSites and WebApplications using HTML, CSS and JavaScript and .Net Framework.  Microsoft definition from www.asp.net  ASP.NET is a WebApplication framework developed by Microsoft to allow programmers to build dynamic WebSites, WebApplications and WebServices.  First released, January 2002 with .NET Framework 1.0, and is the successor to Microsoft’s ASP technology.  From Wikipedia.com
  • 13. ASP.NET and MS. Visual Studio  Unified web development model for building web applications.  A new programming model and infrastructure.  Separates code from HTML  Provides a GUI designer and a fully integrated debugging support.  Is a compiled, .NET based environment.  Event-driven model  Applications are written in any .NET compatible language (VB.NET, C#,…., etc.)
  • 14. ASP.NET and MS. Visual Studio  ASP.NET supports three approaches to build web sites: ◦ Web Pages using WebMatrix ◦ MVC ◦ Web Forms
  • 15. ASP.NET and MS. Visual Studio
  • 16. Convert from an HTML to an aspx page
  • 18. PostBack  An HTTP POST to the same page that the form is on.  The contents of the form are POSTed back to the same URL as the form.  Allows a page to perform validation and processing on its own form data.
  • 20.
  • 21. ASP.NET Coding Model  Inline Code Model  Code Behind Model ◦ We work with this model for better organization of code and separation of concerns
  • 22.
  • 23.
  • 24.
  • 25. ASP.NET  ASP.NET is OO so everything is represented with classes and objects  The application starts once the first request to the application and must not be restarted often, except for maintenance.  The page is compiled and cached on first request.  Each Application has a virtual directory on the web server.  ASP.NET is event-driven. There are: 1. global application events. 2. page related events 3. control related events  Note : Eventually, the page is rendered into HTML.
  • 26. How do ASP.NET works?  Runs on the web server.  Renders appropriate markup (HTML) to the requesting browser.  Completely object-oriented.  Works with HTML elements using properties, methods, and events.  Controls look and feel through skins, themes and master-pages
  • 27. How do ASP.NET works?  A simple request flow: 1. A page is requested by a client 2. Web server sends it to the worker process (w3wp.exe) 3. Worker process processes the request and returns response a. Instantiates a page object b. Run page events c. Instantiates control objects d. Run control events e. Render page to html f. Destroys page object 4. Web server sends response to the client
  • 28. How do ASP.NET works?  HTTP is a stateless protocol.  In ASP.NET, after page rendering to HTML, the page objects is destroyed.  However, ASP.NET has state management techniques using session state, view state, cookies, query string,…… to save user information and controls state.
  • 29. ASP.NET Page Object Generation  A merge between the generated code, and the partial class you write in the *.aspx.cs file
  • 30.
  • 32. ASP.NET Controls  HTML Controls  HTML Server Controls  Web Controls
  • 33. HTML Controls  Ordinary XHTML tags  Stateless  Aren’t accessed in server code except if runat=“server” attribute is added  HTML Server Control
  • 34. HTML Server Controls  Equivalents for standard HTML elements.  Provide an object interface for HTML elements.  Retain their state between postbacks  The HTML Control Classes defined in the System.Web.UI.HtmlControls namespace.  Fire server-side events ◦ ServerClick  actually post back the page, ◦ ServerChange  it doesn’t occur until the page is posted back.
  • 36.
  • 37. Web Controls  Provide Windows closely-resembled controls.  Feature user interface elements that may have/haven’t a direct HTML equivalent, such as the Label, TextBox, GridView, Calendar, and validation controls.  Adaptive rendering
  • 40.
  • 41. Convert from an HTML to an aspx page
  • 42. Remember The web form is recreated with every round-trip. It doesn’t persist or remain in memory longer than it takes to render a single request.
  • 43. Remember Only one form can has a runat=server attribute in each page
  • 44.
  • 45. View State  ASP.NET has an integrated state serialization mechanism.  Hidden field to store information, in a compressed format, about the state of every control in the page.  Advantage free server resources  Disadvantage  bigger page size, longer receive and post time
  • 46. View State  Serialization is the process of converting an object into a stream of bytes in order to persist it to memory, a database, or a file. Its main purpose is to save the state of an objet in order to be able to recreate it when needed. The reverse process is called deserialization.  ViewState is serialized as a Base64 string
  • 47. Viewstate  Enable ViewState property, to enable the storage of controls values. ◦ EnableViewState=false, a small amount of viewstate info is still stored (controlstate), it can never be disabled. ◦ EnableViewstate=false, has effect on datagrids
  • 48.
  • 49.
  • 51. Page Class  Page Lifecycle  Page Class properties  Page as a Container  Event Model  How PostBack Events Work?
  • 53. Convert from an HTML to an aspx page
  • 54. Page Class  Inherits System.Web.UI.Page  Basic Property ◦ IsPostBack :  boolean ◦ Request:  HttpRequest object info about the user’s browser, to transmit information from one page to another using query string, to RETRIEVE cookies, ◦ Response:  HttpResponse object to redirect to a different web page, to CREATE cookies. ◦ Server:  HttpServerUtility object tasks as to encode text
  • 55. Sending user to another page Response.Redirect() Server.Transfer()  Sends a redirect msg to client, which then sends a request for the new page (round trip)  Can redirect to any page in the website or any absolute URL.  Client Browser reflects the URL Change  Starts processing the new page and sends the rendered HTML.  Can’t access pages outside web application, or non-ASP.NET page.  Client Browser URL isn’t changed  no bookmark support
  • 56. Page As A Control Container  After creating page object  Foreach element with runat=server attr. ◦ Create control object ◦ Configure properties ◦ Add to controls collection of the page  The same happened recursively for nested controls
  • 57. Page As A Control Container  Page.Controls  Page.FindControl(“ControlID”);
  • 58. Convert from an HTML to an aspx page
  • 59. AVOID INITIAIZING IN CODE, USE CONTROL TAG PROPERTIES. Remember: Initializing a control in Page.Load counts as a change and is stored in the viewstate.
  • 60. Events Model  AutoPostBack  Events, Event Handling happens in two ways: Wait for next postback A single postback results in several change events, which fire one after the other, in an undetermined order. Automatic postback Force a control to postback immediately.
  • 62. How PostBack Events Work?  On Server Side: ◦ ASP.NET re-creates the Page object. ◦ ASP.NET retrieves state info from the hidden viewstate field to update the controls. ◦ The Page.Load event is fired. ◦ The appropriate change events are fired for the controls. ◦ The Page.PreRender event fires, and the page is rendered. ◦ The Page.Unload event is fired. ◦ The new page is sent to the client.
  • 63.
  • 64. Reading Assignment 1  ASP.NET Page Life Cycle Overview , http://msdn.microsoft.com/en- us/library/ms178472.aspx  View State Chunking
  • 65. Report #1  What is the difference between a web page and a web site and a web application?  What’s the difference between Website project and web application project in visual studio?
  • 66. Lab #1 The aim of the labs is to create a website to sell books, the site will be called Bookies.com.  First I need to register my data (name, gender, age, preferences, country, city) (register.aspx)  Then I will browser through books images and titles that are put in a table structure by default 2 rows and 2 columns with a more link for more data.
  • 67. Lab hints  Lab steps: ◦ Put your controls ◦ Add styles necessary ◦ Start adding functionality  Use html controls whenever possible  Html hints ◦ Search for fieldset and legend tags  Use ◦ Request.QueryString ◦ HyperLink.NavigationUrl ◦ HyperLink.Enabled  Enjoy ASP.NET!!!
  • 68. Report #1  What is the difference between a web page and a web site and a web application?  What’s the difference between Website project and web application project in visual studio?
  • 69. REFERENCES  [1] Beginning ASP.NET 4 In C# 2010, Matthew Macdonald, Apress  [2] Web Application Architecture Principles, Protocols And Practices, Leon Shklar And Richard Rosen, Wiley  [3] Professional AS P.NE T 4 In C# And VB, Bill Evjen, Scott Hanselman And Devin Rader, Wiley  [4] Pro ASP.NET In C# 2010, Fourth Edition,matthew Macdonald, Adam Freeman, And Mario Szpuszta, Apress  http://asp.net-tutorials.com/  http://www.asp.net/  http://msdn.microsoft.com/en-us/library/ee532866.aspx back

Hinweis der Redaktion

  1. Difference between dynamic and static sites
  2. Web Pages ASP.NET Web Pages and the new Razor syntax provide a fast, approachable, and lightweight way to combine server code with HTML to create dynamic web content. Connect to databases, add video, link to social networking sites, and include many more features that let you create beautiful sites using the latest web standards. MVC ASP.NET MVC gives you a powerful, patterns-based way to build dynamic websites that enables a clean separation of concerns and that gives you full control over markup for enjoyable, agile development. ASP.NET MVC includes many features that enable fast, TDD-friendly development for creating sophisticated applications that use the latest web standards. Web Forms ASP.NET Web Forms lets you build dynamic websites using a familiar drag-and-drop, event-driven model. A design surface and hundreds of controls and components let you rapidly build sophisticated, powerful UI-driven sites with data access.
  3. First Hello World Then say HI
  4. Default form tag html rendering <form method=“post” action=“samepage.aspx” id=“form”>
  5. Default form tag html rendering <form method=“post” action=“samepage.aspx” id=“form”>
  6. Separation of Concerns
  7. Directives  are commands to the compiler when compiling a page or control <%@ [Directive] [Attribute=Value] %> Page Directive control behaviour of pages
  8. ASP.NET is OO so everything is represented with classes and objects The application is starts once the first request to the application and must not be restarted often, except for maintenance. The page is compiled and cached on first request. Each Application has a virtual directory on the web server. ASP.NET is an event-driven way of making web applications. There are: 1- global application events. 2- page related events 3- control related events Note : Eventually, the page is rendered into HTML.
  9. AllControls page
  10. Viewstate can be encrypted
  11. Page Initialization  Fire Page.Init (controls maynot be created and viewstate information isn’t loaded yet) generates all controls defines with tags in .aspx If postbacked  deserialize the viewstate information and apply it to the controls. User Code Initialization  Page.Load fired Validation After Page.Load and before events handling Event Handling  event model is just an emulation Automatic Data Binding  asp.net automatically performs updates and queries against data source controls 1- changes submited 2- Page.PreRender 3- Queries and controls bound Event handlers wont have access to the most recent data, not yet retrieved CleanUp Page.Unload , no change to controls since HTML already rendered
  12. PageEvents page
  13. To access all HTTP context information from a non-page class, use System.Web.HttpContext class, HttpContext.Current  static property, returns instance of HTTPContext representing all info on current request and response
  14. PageControls page DynamicControl page Remember on postback  dynamically created controls won’t be recreated automatically Use unique id to reach it or using recursive search
  15. Windows developers are accustomed to a rich event model that lets reacts to mouse movements, key presses and control interaction. In ASP.NET, responding to events are handled by the server. It adds an amount of overhead to respond. Rapid events are impractical. For UI effects, use client-side javascript or Ajax In HTML, there is only one way to submit a form  a submit button AutoPostBack available with web controls only
  16. Classical ASP /PHP developer do it manually and write the code themselves
  17. PostBackPage page Autopostback page