ASAP to ASP.NET 2.0 - PowerPoint PPT Presentation

Loading...

PPT – ASAP to ASP.NET 2.0 PowerPoint presentation | free to download - id: 9e5c6-ZTIzY



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

ASAP to ASP.NET 2.0

Description:

The personalization properties that are maintained on a per-user basis are ... Skin = Visual attributes for control(s) Physically stored in .skin files ... – PowerPoint PPT presentation

Number of Views:1005
Avg rating:3.0/5.0
Slides: 67
Provided by: noam8
Learn more at: http://www.renaissance.co.il
Category:
Tags: asap | asp | net

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: ASAP to ASP.NET 2.0


1
ASAP to ASP.NET 2.0
  • Noam King
  • CTO
  • Sela youniversity

2
Agenda
  • Introduction
  • Architecture
  • Master Pages
  • Personalization
  • Building a site with Web Parts.
  • Skins and Themes
  • Administration Management
  • Site Navigation (Optional)
  • Handling data with ASP.NET 2.0 (Optional)
  • Summary

3
Introduction to ASP.NET 2.0
Data Controls
Login Controls
Web Parts
Other New Controls
Controls
Master Pages
Themes and Skins
Mobility and Localization
Compilation
Page Framework
Membership
Role Management
Profiles
Configuration
Services and APIs
Site Maps
Health Monitoring
Other Services
4
Architecture
5
Architecture Code Model
  • ASP 1.1 ASP 2.0

6
Architecture Coding Model (cont.)
  • Reduced Inheritance Complexity
  • No need for declaration code
  • Code is linked by VS2005 and the runtime
  • Reduced Compilation Complexity
  • Code-behind automatically synchronized with aspx
    page
  • More compilation models

7
Architecture Coding Model (cont.)Compilation
  • Normal
  • Similar to Asp 1.1
  • Batch Compilation
  • Like in asp1.1
  • ltcompilation batch"truefalse"
    batchTimeout"number of seconds"
    maxBatchSize"maximum number of pages per batched
    compilation" maxBatchGeneratedFileSize"maximum
    combined size (in KB) of the generated source
    file per batched compilation
  • lt/compilationgt

8
Architecture Coding Model (cont.)Compilation
(cont.)
  • Deployment pre-compilation
  • aspnet_compiler /v /ltwebsitenamegt p ltsourcegt
  • HTML pages, resources, configuration files, and
    ASPX pages are copied separately.
  • Stub files for the various aspx pages.
  • Increased performance and increased security.

9
Architecture Coding Model (cont.)Compilation
(cont.)
  • In Place Compliation
  • http//localhost/mywebsitename/precompile.axd
  • Eliminate performance hit of batch compilation
  • Let you find compilation errors before your users
    do.
  • Full Runtime Compilation (The Code Directory)
  • the \Code directory is designed for storing class
    files to be compiled dynamically at run time.
  • Simple deployment

10
Architecture Page LifeCycle
  • Constructor
  • Construct
  • TestDeviceFilter
  • AddParsedSubObject
  • DeterminePostBackMode
  • OnPreInit
  • LoadPersonalizationData
  • InitializeThemes
  • OnInit
  • ApplyControlSkin
  • ApplyPersonalization
  • OnInitComplete
  • LoadPageStateFromPersistenceMedium
  • (PB)
  • LoadControlState (PB)
  • LoadViewState (PB)

ProcessPostData1 OnPreLoad OnLoad ProcessPostData2
(PB) RaiseChangedEvents (PB) RaisePostBackEvent
(PB) OnLoadComplete OnPreRender OnPreRenderComplet
e SavePersonalizationData SaveControlState SaveVie
wState SavePageStateToPersistenceMedium Render OnU
nload
PB Post Back
11
Architecture Code Page Posting
If Page.IsCrossPagePostBack Then Label1.Text
Hello PreviousPage.pp_Textbox1.Text ltbr
/gt _ Date Selected _ PreviousPage.pp_Ca
lendar1.Sele ctedDate.ToShortDateString() Else Re
sponse.Redirect(Page1.aspx) End If
12
Architecture - Extensibilty
  • New HttpModules
  • SessionID
  • Role Management
  • Anonymous Identification
  • Profile
  • Page Counters
  • New Handlers
  • WebAdminHandler
  • TraceHandler
  • WebResourcesHandler
  • PrecomHandler
  • More

13
Architecture Performance
  • Improved Request Pipeline
  • Up to 30 percent improved request stack
  • Improved Memory management with IIS6
  • Working set for the worker process reduced by
    around 50.
  • General improvements on II6
  • More to come in the release

14
Master Pages
15
Master Pages - Basics
  • Masters define common content and placeholders
    (ltaspContentPlaceHoldergt)
  • Content pages reference masters and fill
    placeholders with content (ltaspContentgt)

Site.master
default.aspx
http//.../default.aspx
lt_at_ Master gt ltaspContentPlaceHolder
ID"Main" RunAt"server" /gt
lt_at_ Page MasterPage- File"Site.master"
gt ltaspContent ContentPlaceHolderID "Main"
RunAt"server" /gt lt/aspContentgt

16
Master Pages Defining and applying
  • Defining

lt_at_ Master gt
  • Applying

lt_at_ Page MasterPageFile"/Site.master"
gt ltaspContent ContentPlaceHolderID"Main"
RunAt"server"gt This content fills the place
holder "Main" defined in the master
page lt/aspContentgt
17
Master Pages
  • Applying to a site

ltconfigurationgt ltsystem.webgt ltpages
masterPageFile"/Site.master" /gt
lt/system.webgt lt/configurationgt
  • Applying Programmatically

Sub Page_PreInit (ByVal sender As Object,ByVal e
As EventArgs) Page.MasterPageFile
"/Site.master" End Sub
18
Master Pages Weak Typing
In the master page
ltaspLabel ID"Title" RunAt"server" /gt
In the content page
(CType(Master.FindControl ("Title"), Label).Text
"Orders"
19
Master Pages Strong Typing
In the master page
ltaspLabel ID"Title" RunAt"server" /gt . .
. ltscript languageVB" runat"server"gt Public
Property TitleText as string Get return
Title.Text End Get Set Title.Text
value End Set End Property lt/scriptgt
In the content page
Master.TitleText "Orders"
20
Master Pages - Nesting
21
Master Pages Nesting (cont.)
  • Master pages that have masters must contain only
    Content controls, but Content controls can
    contain ContentPlaceHolders

lt!-- Orders.Master --gt lt_at_ Master
MasterPageFile"/Site.Master" gt ltaspContent
ContentPlaceHolderID"..." RunAt"server"gt
ltaspContentPlaceHolder ID"..." RunAt"server"gt
... lt/aspContentPlaceHoldergt ltaspContentgt
22
Master Pages - Container-Specific
  • lt_at_ Page LanguageVB MasterPageFile/Sela.mast
    er
  • MozillaMasterPageFile/SelaMozilla.master
  • OperaMasterPageFile/SelaOpera.master gt
  • ltaspContent IDContent1 ContentPlaceHolderIdC
    ontentPlaceHolder1
  • Runatservergt
  • Hello World
  • lt/aspContentgt

23
Master Pages Event order
  • Master page child controls initialization
  • Content page child controls initialization
  • Master page initialization
  • Content page initialization
  • Content page load
  • Master page load
  • Master page child controls loadContent page child
    controls load

24
Personalization
25
Personalization - Overview
  • Automatic association between the end user
    viewing the page and any data points stored for
    that user.
  • The personalization properties that are
    maintained on a per-user basis are stored on the
    server and not on the client.
  • The end user can access these personalization
    properties on later site visits.
  • Ideal way to start creating highly customizable
    and user-specific sites without massing with all
    the underlined code.

26
Personalization Defining Using
Configuration
ltconfigurationgt ltsystem.webgt ltprofilegt ltpropert
iesgt ltadd nameFirstName /gt ltadd
nameLastName /gt lt/propertiesgt
lt/profilegt lt/system.webgt lt/configurationgt
Using
Profile.FirstName TextBox1.Text
27
Personalization - Groups
Configuration
ltgroup nameMemberDetailsgt ltadd nameMember
/gt ltadd nameDateJoined /gt ltadd
namePaidDuesStatus /gt ltadd nameLocation
/gt lt/groupgt
Using
Label1.Text Profile.MemberDetails.DateJoined
28
Personalization - Types
  • Define types to the fields
  • Use default values to the fields
  • Define readonly for fields
  • Create custom types for fields and serialization
    type.

ltadd nameField name typeFieldType
serializeAsBinary /gt
29
Web Parts
30
Web Parts
  • Orchestrates operation of Web Parts
  • Maintains list of Web Parts and zones
  • Manages page state (e.g., display mode) and fires
    events when page state changes
  • Facilitates communication between Web Parts
  • Manages personalization and much more
  • One instance per page not a visible control.

ltaspWebPartManager ID"WebPartManager1"
RunAt"server" /gt
31
Web Parts - WebPartZone
  • Defines zones on a Web Parts page
  • Defines default layout and appearance of Web
    Parts within each zone

ltaspWebPartZone ID"WeatherZone"
DragHighlightColor"244,198,96" RunAt"server"gt
ltPartTitleStyle BackColor"2254B1"
ForeColor"White" /gt ltPartStyle
BorderColor"81AAF2" BorderStyle"Solid"
BorderWidth"1px" /gt ltZoneTemplategt lt!--
Web Parts declared here --gt lt/ZoneTemplategt lt/as
pWebPartZonegt
32
Web Parts - Controls
  • Controls defined in a WebPartZone
  • Web controls, user controls, custom controls
  • Controls that don't implement IWebPart are
    internally wrapped in GenericWebParts
  • Adds properties Title, Description, etc.

ltZoneTemplategt ltaspCalendar
Title"Calendar" ID"Calendar1" RunAt"server"
/gt ltuserWeather Title"Weather"
ID"Weather1" RunAt"server" /gt
ltcustomSearch Title"Search" ID"Search1"
RunAt"server" /gt lt/ZoneTemplategt
33
Web Parts WebPartManager WebPartPage Menu
  • Gets and sets the page's display mode

Value
Description
BrowserDisplayMode
"Normal" display mode no editing (default)
DesignDisplayMode
Permits drag-and-drop layout editing
EditDisplayMode
Permits editing of Web Parts' appearance and
behavior
CatalogDisplayMode
Permits Web Parts to be added to the page
ConnectDisplayMode
Permits connections to be established between Web
parts
ltaspWebPartPageMenu IDWebpartpagemenu1
Runatservergt lt/aspWebPartPageMenugt
34
Web Parts Catalog Zone
ltaspCatalogZone ID"CatalogZone1"
Runat"server"gt ltZoneTemplategt
ltaspPageCatalogPart ID"PageCatalogPart1"
Runat"server" /gt ltaspDeclarativeCatalogPart
ID"DeclarativeCatalogPart1" Runat"server"gt
ltWebPartsTemplategt lt!-- Declarative Web
Parts go here --gt lt/WebPartsTemplategt
lt/aspDeclarativeCatalogPartgt
ltaspImportCatalogPart ID"ImportCatalogPart1"
Runat"server" /gt lt/ZoneTemplategt lt/aspCatalogZ
onegt
DeclarativeCatalogPart
35
Web Parts - EditorZone
ltaspEditorZone ID"EditorZone1" Runat"server"gt
ltZoneTemplategt ltaspAppearanceEditorPart
ID"AppearanceEditorPart1" Runat"server" /gt
ltaspBehaviorEditorPart ID"BehaviorEditorPart1"
Runat"server" /gt ltaspLayoutEditorPart
ID"LayoutEditorPart1" Runat"server" /gt
lt/ZoneTemplategt lt/aspEditorZonegt
36
Web Parts Custom Web Parts
  • Any control can serve as a Web Part, but
  • Controls that derive from WebPart can better
    leverage the Web Parts infrastructure
  • Control Title and other UI-related properties
  • Control AllowClose, AllowZoneChange,
    AllowMinimize, and other behavioral properties
  • Apply role-based security (authorization filters)
  • Add custom verbs, export Web Parts, and more

37
Web Parts Custom Web Parts (cont.)
public class MyWebPart WebPart public
override WebPartVerbCollection Verbs
get EnsureChildControls ()
WebPartVerb verb new
WebPartVerb (new WebPartEventHandler
(OnClearResults)) verb.Text "Clear
Results" WebPartVerb verbs new
WebPartVerb verb return new
WebPartVerbCollection (base.Verbs, verbs)
void OnClearResults (object sender,
WebPartEventArgs args) ... ...
38
Skins And Themes
39
Skins and Themes - Overview
  • Mechanism for theming controls, pages, and sites
    by group-initializing control properties
  • Skin Visual attributes for control(s)
  • Physically stored in .skin files
  • Default skins and named skins
  • Theme Collection of one or more skins
  • Physically stored in Themes subfolders
  • Global themes and local themes

40
Skins and Themes - Applying
On a page
lt_at_ Page Theme"BasicBlue"gt
On a Site
ltconfigurationgt ltsystem.webgt ltpages
theme"BasicBlue" /gt lt/system.webgt lt/configurati
ongt
Programmatically
Sub Page_PreInit (ByVal sender As Object, ByVal e
As EventArgs) Page.Theme "BasicBlue" End
Sub
41
Skins And Themes Global
ASP.NET-ClientFiles
Theme name Subdirectory name
Themes
BasicBlue
SKIN
SKIN
Smoke-AndGlass
SKIN
SKIN
42
Skins and Themes - Local
vroot
Theme name Subdirectory name
Themes
Shocking-Pink
SKIN
SKIN
Autumn-Leaves
SKIN
SKIN
43
Skins and Themes Named Skins
  • Skins without SkinIDs are default skins
  • Skins with SkinIDs are named skins
  • SkinIDs must be unique per control type
  • Can be defined in same SKIN file as default skins
    or in separate files
  • Use controls' SkinID properties to apply named
    skins

44
Skins and Thems Named Skins (Defining and Using)
lt!-- Default look for DropDownList controls
--gt ltaspDropDownList runat"server"
BackColor"blue" ForeColor"white"
SkinID"Blue" /gt lt!-- Default look for DataGrid
conotrols --gt ltaspDataGrid runat"server"
BackColor"CCCCCC" BorderWidth"2pt"
BorderStyle"Solid" BorderColor"CCCCCC"
GridLines"Vertical" HorizontalAlign"Left"
SkinID"Blue"gt ltHeaderStyle ForeColor"white"
BackColor"blue" /gt ltItemStyle
ForeColor"black" BackColor"white" /gt
ltAlternatingItemStyle BackColor"lightblue"
ForeColor"black" /gt lt/aspDataGridgt ...
ltaspDropDownList ID"Countries" SkinID"Blue"
RunAt"server" /gt
45
Administration Management
46
AM - Overview
  • Administrative tools
  • ASP.NET MMC snap-in
  • Web Site Administration Tool (Webadmin.axd)
  • Configuration API
  • Read/write access to configuration settings
  • Simplified custom configuration sections
  • Instrumentation
  • Perf counters, health monitoring, and more

47
AM ASP.NET MMC Snap-In
  • GUI for applying configuration settings

48
AM Web Site Administration Tool (WAT)
  • Browser-based admin GUI

Invoked by requesting Webadmin.axd or using the
"ASP.NET Configuration" command in Visual
Studio's Website menu
49
AM Configuration class
  • Gateway to the configuration API
  • Provides merged view of configuration settings
    for machine or application
  • AppSettings and ConnectionStrings properties
    provide access to ltappSettingsgt and
    ltconnectionStringsgt sections
  • Sections and SectionGroups properties provide
    access to all other sections

50
AM Configuration Class Methods
Name
Description
GetExeConfiguration
Returns a Configuration object representing
config settings for a managed EXE
GetMachineConfiguration
Returns a Configuration object representing config
uration settings for the specified server
GetWebConfiguration
Returns a Configuration object representing config
uration settings for the specified Web application
GetSectionGroup
Returns a ConfigurationSectionGroup
object representing the specified section group
GetSection
Returns a ConfigurationSection object
representing the specified section (e.g.,
ltappSettingsgt
Update
Records changes in the relevant configuration file
51
AM Configuration class properties
Name
Description
AppSettings
Returns an AppSettingsSection object representing
the ltappSettingsgt section
ConnectionStrings
Returns a ConnectionStringsSection object
representing the ltconnectionsStringsgt section
HasFile
True if there's a corresponding configuration
file, false if not
Path
Path to the app represented by this Configuration
object
SectionGroups
Returns a ConfigurationSectionGroupCollection repr
esenting all section groups
Sections
Returns a ConfigurationSectionCollection
representing all sections
52
AM Configuration example (Reading Connection
String)
Read a connection string from ltconnectionStringsgt
Dim connect As string ConfigurationSettings
.ConnectionStrings("Northwind).ConnectionString
Add a connection string to ltconnectionStringsgt Di
m config As Configuration
Configuration.GetWebConfiguration
(Request.ApplicationPath) config.ConnectionStrings
.ConnectionStrings.Add (new
ConnectionStringSettings ("Northwind",
"serverlocalhostdatabasenorthwindintegrated
securitytrue") config.Update () // Important!
53
AM ASP.NET Instrumentation
Name
Description
Performance counters
New peformance counters supplement the
ones introduced in ASP.NET 1.x
Windows event tracing
Integration with ETW subsystem to support
low-overhead tracing of HTTP requests through the
system
Application tracing
ASP.NET trace facility upgraded with new features
and to allow coupling to System.Diagnostics.Trace
Health monitoring
New provider-based subsystem for logging notable
events ("Web events") that occur during an
application's lifetime
54
Handling Data
55
Handling Data DataSource control
  • SqlDataSource
  • Enables you to work with any SQL-based database,
    such as Microsoft SQL Server or Oracle.
  • AccessDataSource
  • Enables you to work with a Microsoft Access file
    (.mbd).
  • ObjectDataSource
  • Enables you to work with a business object or a
    Visual Studio 2005 data component.
  • XmlDataSource
  • Enables you to work with the information from an
    XML file or an XML source (for example an RSS
    feed).
  • SiteMapDataSource
  • Enables you to work with the hierarchical data
    represented in the site map file (.sitemap).
  • DataSetDataSource
  • Enables you to work with data that is represented
    in a DataSet object.

56
Handling Data Data Bound Server controls
  • ltaspGridViewgt
  • ltaspDataGridgt
  • ltaspDetailsViewgt
  • ltaspTreeViewgt
  • ltaspMenugt
  • ltaspDataListgt
  • ltaspRepeatergt
  • ltaspDropDownListgt
  • ltaspBulletedListgt
  • ltaspCheckBoxListgt
  • ltaspRadioButtonListgt
  • ltaspListBoxgt
  • ltaspAdRotatorgt

57
Site Navigation
58
Site Navigation - Overview
  • Navigation UIs are tedious to implement
  • Especially if they rely on client-side script
  • New controls simplify site navigation
  • TreeView and Menu - Navigation UI
  • SiteMapDataSource - XML site maps
  • SiteMapPath - "Bread crumb" controls
  • Public API provides foundation for controls
  • Provider-based for flexibility

59
Site Navigation - Schema
Controls
Menu
TreeView
SiteMapPath
SiteMap- DataSource
Site Navigation API
SiteMap
SiteMapNode
SiteMapNode
SiteMapNode
Providers
XmlSiteMapProvider
Other Site Map Providers
Site Maps
Web.sitemap
Other Data Stores
60
Site Navigation TreeView Example
ltaspTreeView ShowLines"true" Font-Name"Verdana"
Font-Size"10pt" ... gt ltSelectedNodeStyle
BackColor"Yellow" /gt ltHoverNodeStyle
BackColor"LightBlue" /gt ltNodesgt
ltaspTreeNode Text"Not selectable"
SelectAction"None" RunAt"server"gt
ltaspTreeNode Text"Selectable"
SelectAction"Select" RunAt"server" gt
ltaspTreeNode Text"Click to expand or collapse"
SelectAction"Expand" Runat"server"gt
ltaspTreeNode Text"Click to select and
expand or collapse"
SelectAction"SelectExpand" Runat"server"gt
ltaspTreeNode Text"Check box node"
ShowCheckBox"true"
Runat"server"gt ltaspTreeNode
Text"Click to navigate" NavigateUrl"..."
Runat"server" /gt
lt/aspTreeNodegt lt/aspTreeNodegt
lt/aspTreeNodegt lt/aspTreeNodegt
lt/aspTreeNodegt lt/Nodesgt lt/aspTreeViewgt
61
Site Navigation Menu Control
ltaspMenu Orientation"Horizontal"
RunAt"server"gt ltItemsgt ltaspMenuItem
Text"Training" RunAt"server"gt
ltaspMenuItem Text"Programming .NET"
RunAt"server" Navigateurl"Classes.aspx?i
d1" /gt ltaspMenuItem Text"Programming
ASP.NET" RunAt"server"
NavigateUrl"Classes.aspx?id2" /gt
ltaspMenuItem Text"Programming Web Services"
RunAt"server" NavigateUrl"Classes.aspx?i
d3" /gt lt/aspMenuItemgt ltaspMenuItem
Text"Consulting" RunAt"server"
NavigateUrl"Consulting.aspx" /gt
ltaspMenuItem Text"Debugging" RunAt"server"
NavigateUrl"Debugging.aspx" /gt
lt/Itemsgt lt/aspMenugt
62
Site Navagation - SiteMap
ltsiteMapgt ltsiteMapNode title"Home"
description"" url"default.aspx"gt
ltsiteMapNode title"Training" url"Training.aspx"
description"Training for .NET
developers"gt ltsiteMapNode
title"Programming .NET" url"Classes.aspx?id1"
description"All about the .NET Framework"
/gt ltsiteMapNode title"Programming ASP.NET"
url"Classes.aspx?id2" description"All
about ASP.NET" /gt ltsiteMapNode
title"Programming Web Services"
url"Classes.aspx?id3" description"All
about Web services" /gt lt/siteMapNodegt
ltsiteMapNode title"Consulting"
url"Consulting.aspx" description"Consultin
g for .NET projects" /gt ltsiteMapNode
title"Debugging" url"Debugging.aspx"
description"Help when you need it the most" /gt
lt/siteMapNodegt lt/siteMapgt
63
Site Navigation TreeView and SiteMap
ltaspSiteMapDataSource ID"SiteMap"
RunAt"server" /gt ltaspTreeView
DataSourceID"SiteMap" RunAt"server" /gt
Web.sitemap
ltsiteMapgt ltsiteMapNode title"Home"
description"" url"default.aspx"gt
ltsiteMapNode title"Training" url"Training.aspx"
description"Training for .NET
developers"gt ltsiteMapNode
title"Programming .NET" url"Classes.aspx?id1"
description"All about the .NET Framework"
/gt ltsiteMapNode title"Programming ASP.NET"
url"Classes.aspx?id2" description"All
about ASP.NET" /gt ltsiteMapNode
title"Programming Web Services"
url"Classes.aspx?id3" description"All
about Web services" /gt lt/siteMapNodegt
ltsiteMapNode title"Consulting"
url"Consulting.aspx" description"Consultin
g for .NET projects" /gt ltsiteMapNode
title"Debugging" url"Debugging.aspx"
description"Help when you need it the most" /gt
lt/siteMapNodegt lt/siteMapgt
64
Site Navigation Menu and SiteMap
ltaspSiteMapDataSource ID"SiteMap"
RunAt"server" /gt ltaspMenu DataSourceID"SiteMap"
RunAt"server" /gt
Web.sitemap
ltsiteMapgt ltsiteMapNode title"Home"
description"" url"default.aspx"gt
ltsiteMapNode title"Training" url"Training.aspx"
description"Training for .NET
developers"gt ltsiteMapNode
title"Programming .NET" url"Classes.aspx?id1"
description"All about the .NET Framework"
/gt ltsiteMapNode title"Programming ASP.NET"
url"Classes.aspx?id2" description"All
about ASP.NET" /gt ltsiteMapNode
title"Programming Web Services"
url"Classes.aspx?id3" description"All
about Web services" /gt lt/siteMapNodegt
ltsiteMapNode title"Consulting"
url"Consulting.aspx" description"Consultin
g for .NET projects" /gt ltsiteMapNode
title"Debugging" url"Debugging.aspx"
description"Help when you need it the most" /gt
lt/siteMapNodegt lt/siteMapgt
65
Site Navigation SiteMap API
Sub Page_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Hyperlink1.Text
SiteMap.CurrentNode.ParentNode.ToString() Hyperli
nk1.NavigateUrl SiteMap.CurrentNode.ParentNode.U
rl Hyperlink2.Text SiteMap.CurrentNode.Previous
Sibling.ToString() Hyperlink2.NavigateUrl
SiteMap.CurrentNode.PreviousSibling.Url Hyperlink
3.Text SiteMap.CurrentNode.NextSibling.ToString(
) Hyperlink3.NavigateUrl SiteMap.CurrentNode.Ne
xtSibling.Url End Sub lthtml xmlnshttp//www.w3.
org/1999/xhtml gt lthead runatservergt lttitlegtSi
teMapDataSourcelt/titlegt lt/headgt ltbodygt ltform
idform1 runatservergt Move
Up ltaspHyperlink IDHyperlink1
Runatservergtlt/aspHyperlinkgtltbr /gt lt--
ltaspHyperlink IDHyperlink2 Runatservergtlt/as
pHyperlinkgt ltaspHyperlink IDHyperlink3
Runatservergtlt/aspHyperlinkgt --gt lt/formgt
lt/bodygt lt/htmlgt
66
Summary ASAP.Net
  • New features to simplify repetitive coding tasks
  • New provider model offers extra extensibility
  • New compilation model fixes old base/derived
    class problem
  • Its stronger, faster, prettier and with a better
    engine. Wouldnt you like to give it a test drive
    ?
About PowerShow.com