A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer...
-
Upload
willis-carroll -
Category
Documents
-
view
216 -
download
0
description
Transcript of A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer...
![Page 1: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/1.jpg)
A Lap AroundNew Enhancementsfor Web Developers
in Visual Studio 2005
Alexander HolyDeveloper Evangelist, Microsoft [email protected]
![Page 2: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/2.jpg)
New ASP.NET 2.0 FeaturesCo
ntro
lsPa
geFr
amew
ork
Serv
ices
and
APIs
DataControls
LoginControls Web Parts Other New
Controls
Master Pages Themesand Skins
ImprovedClient Scripting
Compilation& Localization
Membership RoleManagement Profiles Configuration
SiteMaps
HealthMonitoring
Other NewServices
![Page 3: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/3.jpg)
Master Pages• Content by inheritanceMaster Page
Content Page
![Page 4: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/4.jpg)
How Master Pages Work• Master pages define common content and
content placeholders• Content pages reference masters and fill
placeholders with contentSite.master default.aspx
Content
http://.../default.aspx
Content-PlaceHold
er
![Page 5: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/5.jpg)
Page.Master• New property of System.Web.UI.Page• Provides content pages with programmatic
access to master pages– Determine whether page has a master– Access controls defined in master– Access public methods and properties defined in
master• Code-level integration of master pages and
content pages
![Page 6: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/6.jpg)
Master Pages
![Page 7: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/7.jpg)
Data Source Controls
• Declarative ("no-code") data binding
Sql-DataSource
Object-DataSource
Access-DataSource
Xml-DataSource
SiteMap-DataSource
SQLDatabases
AnyData
AccessDatabases
XMLData Site Maps
DataComponent
Site MapProvider
![Page 8: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/8.jpg)
Data Controls
• New data-bound controls• Built-in support for selecting, editing,
paging, sorting, and more
GridView DetailsView FormView
![Page 9: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/9.jpg)
2-Way Data Binding
• Data controls supply editing UIs– AutoGenerateXxxButton properties– Insert/EditRowStyle properties– Inserting/ed, Updating/ed, Deleting/ed events
• Data source controls supply logic– Insert/Update/DeleteCommand properties– Insert/Update/DeleteParameters properties– Inserting/ed, Updating/ed, Deleting/ed events
• Visual Studio supplies the glue
![Page 10: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/10.jpg)
Caching
• Many data source controls provide built-in caching support– EnableCaching - Enables/disables caching– CacheDuration - Length of time (seconds)– CacheExpirationPolicy - Sliding or absolute– CacheKeyDependency/SqlCacheDepedency -
Cache dependencies• No-code data caching!
![Page 11: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/11.jpg)
CacheSync• SQL cache dependencies
– Couple cached items to database entities– Change to underlying data evicts corresponding
item(s) from cache• Works with SQL Server 7, SQL Server 2000,
and SQL Server 2005– Requires database prep for SQL Server 7 and
SQL Server 2000 (Aspnet_regsql.exe)– "Just works" with SQL Server 2005
• Much-requested feature of ASP.NET
![Page 12: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/12.jpg)
Data Access
![Page 13: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/13.jpg)
Membership Service• Manages users and credentials
– Declarative access via Web Site Admin Tool– Programmatic access via Membership API
• Vastly simplifies forms authentication– Provides logic for validating user names and
passwords, creating accounts, and more– Provides data store for storing credentials, e-mail
addresses, and other membership data• Provider-based for flexible data storage
![Page 14: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/14.jpg)
Membership Schema
Membership API
MembershipData
SQL Server OtherData Stores
Membership Providers
ActiveDirectory
Login LoginStatus LoginView Other
Controls
Membership MembershipUser
SqlMembershipProvider
ActiveDirectory-MembershipProvider
Other Providers
![Page 15: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/15.jpg)
Role Manager• Role-based security in a box
– Declarative access via Web Site Admin Tool– Programmatic access via Roles API
• Simplifies adding role-based security to sites that employ forms authentication– Maps users to roles on each request– Provides data store for role information
• Provider-based for flexible data storage
![Page 16: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/16.jpg)
Role Management Schema
Role API
Role Data
SQL Server OtherData Stores
Role Providers
AuthorizationManager
("AzMan")
Login LoginStatus LoginView Other
Controls
Roles
SqlRole-Provider
AuthorizationStore-RoleProvider
Other Providers
WindowsToken-
RoleProvider
![Page 17: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/17.jpg)
Login Controls• UI and logic for security-related tasks
Login
Password-Recovery
LoginStatusLoginName
LoginView CreateUser-Wizard
Change-Password
Membership &Role Management
![Page 18: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/18.jpg)
LoginView<asp:LoginView ID="LoginView1" Runat="server"> <AnonymousTemplate> <!-- Content seen by unauthenticated users --> </AnonymousTemplate> <LoggedInTemplate> <!-- Content seen by authenticated users --> </LoggedInTemplate> <RoleGroups> <asp:RoleGroup Roles="Administrators"> <ContentTemplate> <!-- Content seen by administrators --> </ContentTemplate> </asp:RoleGroup> ... </RoleGroups></asp:LoginView>
![Page 19: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/19.jpg)
Membership and Roles
![Page 20: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/20.jpg)
Profiles• Store per-user data persistently
– Strongly typed access (unlike session state)– On-demand lookup (unlike session state)– Long-lived (unlike session state)– Authenticated and anonymous users– Rich type support (including custom types)
• Accessed through dynamically compiled HttpProfileBase derivatives
• Provider-based for flexible data storage
![Page 21: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/21.jpg)
Profile Definition<profile> <properties> <!-- String property --> <add name="MyName" /> <!-- Int32 property with default value --> <add name="MyFavoriteNumber" type="System.Int32" defaultValue="0" /> <!-- DateTime property --> <add name="MyBirthday" type="System.DateTime" /> <!-- Custom type; auth. and anon. users --> <add name="MyItems" type="ShoppingCart" serializeAs="binary" allowAnonymous="true" /> </properties></profile>
![Page 22: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/22.jpg)
Data-Driven Site Navigation• 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 site map API provides foundation• Provider-based for flexibility
![Page 23: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/23.jpg)
Site Navigation Schema
Site Map API
Site Maps
Web.sitemap OtherData Stores
Controls Menu TreeView SiteMapPathSiteMap-
DataSource
SiteMap
SiteMapNodeSiteMapNode SiteMapNode
XmlSiteMapProvider Other Site MapProviders
Providers
![Page 24: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/24.jpg)
XML Site Map<?xml version="1.0" encoding="utf-8" ?><siteMap> <siteMapNode> <siteMapNode title="Home" url="~/Default.aspx" /> <siteMapNode title="Tickets" url="~/Tickets.aspx" /> <siteMapNode title="Concert Gear" url="~/Gear.aspx" /> <siteMapNode title="Backstage" url="~/MembersOnly/Backstage.aspx" /> <siteMapNode title="Preferences" url="~/MembersOnly/Preferences.aspx" /> </siteMapNode></siteMap>
![Page 25: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/25.jpg)
Security Trimming• Feature of site map providers• Varies navigation UI based on roles<?xml version="1.0" encoding="utf-8" ?><siteMap> <siteMapNode roles="*"> <siteMapNode title="Home" url="~/Default.aspx" /> <siteMapNode title="Tickets" url="~/Tickets.aspx" /> <siteMapNode title="Concert Gear" url="~/Gear.aspx" /> <siteMapNode title="Backstage" roles="Members" url="~/MembersOnly/Backstage.aspx" /> <siteMapNode title="Preferences" roles="Members" url="~/MembersOnly/Preferences.aspx" /> </siteMapNode></siteMap>
![Page 26: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/26.jpg)
Site Navigation
![Page 27: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/27.jpg)
New ASP.NET 2.0 FeaturesCo
ntro
lsPa
geFr
amew
ork
Serv
ices
and
APIs
DataControls
LoginControls Web Parts Other New
Controls
Master Pages Themesand Skins
ImprovedClient Scripting
Compilation& Localization
Membership RoleManagement Profiles Configuration
SiteMaps
HealthMonitoring
Other NewServices
![Page 28: A Lap Around New Enhancements for Web Developers in Visual Studio 2005 Alexander Holy Developer Evangelist, Microsoft EMEA](https://reader035.fdocuments.us/reader035/viewer/2022062600/5a4d1b4f7f8b9ab0599a6f33/html5/thumbnails/28.jpg)
© 2005 Microsoft Corporation. All rights reserved.© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.