Visual Studio 2005Visual Studio 2005“Productividad personalizada”“Productividad personalizada”
Entusiastas, Entusiastas, principiantes y principiantes y
estudiantesestudiantes
““My first program”My first program”
Desarrolladores WebDesarrolladores WebDesarrolladores VB6Desarrolladores VB6
App. Servicios WebApp. Servicios WebApp. Smart clientApp. Smart clientApp. DispositivosApp. Dispositivos
Todos los lenguajesTodos los lenguajes
Desarrolladores Desarrolladores profesionalesprofesionalesen un equipo en un equipo
pequeñopequeñoServer-based appsServer-based apps
Database appsDatabase apps
Organizaciones de Organizaciones de desarrollodesarrollo
Team collaborationTeam collaborationProcess-driven orgsProcess-driven orgs
Desarrollo de Aplicaciones Web de punta con Visual Studio 2005 y ASP .NET 2.0
Desarrollo de Aplicaciones Web de punta con Visual Studio 2005 y ASP .NET 2.0
Haaron Gonzalez, MVP, MCAD, MCTHaaron Gonzalez, MVP, MCAD, MCTChief Solution ArchitectChief Solution ArchitectPlexIT ConsultingPlexIT [email protected]@plexit.com.mx
Lo nuevo de ASP.NET 2.0Lo nuevo de ASP.NET 2.0C
on
trols
Pag
eFra
mew
ork
Serv
ices
an
d A
PIs
DataControls
LoginControls
Web PartsOther NewControls
Master PagesThemes
and SkinsImproved
Client ScriptingCompilation
& Localization
MembershipRole
ManagementProfiles Configuration
SiteMaps
HealthMonitoring
Other NewServices
Master PagesMaster Pages
Content by inheritanceContent by inheritance
Master Page
Content Page
Master Pages como Master Pages como trabajantrabajan Master pagesMaster pages definen el contenido definen el contenido
común y los contenedores de común y los contenedores de contenido (content placeholders)contenido (content placeholders)
Content pagesContent pages hacen referencia a las hacen referencia a las paginas maestras y llenan a los paginas maestras y llenan a los contenedores con su contenidocontenedores con su contenido
Site.master default.aspx
Content
http://.../default.aspx
Content-PlaceHold
er
Page.MasterPage.Master
Nueva propiedad de Nueva propiedad de System.Web.UI.PageSystem.Web.UI.Page
Provee a una pagina contenido de Provee a una pagina contenido de acceso programático a las pagina acceso programático a las pagina maestramaestra Determina si la pagina tiene asociada Determina si la pagina tiene asociada
una maestrauna maestra Acceso a los controles definidos en la Acceso a los controles definidos en la
maestramaestra Acceso a métodos públicos y Acceso a métodos públicos y
propiedades definidas en la maestrapropiedades definidas en la maestra Integración a nivel código de las Integración a nivel código de las
paginas maestras y contenidospaginas maestras y contenidos
Master PagesMaster Pages
Haaron Gonzalez, MVP, MCAD, Haaron Gonzalez, MVP, MCAD, MCTMCTChief Solution ArchitectChief Solution ArchitectPlexIT ConsultingPlexIT [email protected]@plexit.com.mx
Controles Data SourceControles Data Source
Vinculación declarativa (“sin-código")Vinculación declarativa (“sin-código")
Sql-DataSource
Object-DataSource
Access-DataSource
Xml-DataSource
SiteMap-DataSource
SQLDatabases
AnyData
AccessDatabases
XMLData
Site Maps
DataComponent
Site MapProvider
Controles de DatosControles de Datos Nuevos controles que soportan Nuevos controles que soportan
vinculación a datosvinculación a datos Soporte interno para seleccionar, Soporte interno para seleccionar,
editar, paginar, ordenas y mucho editar, paginar, ordenas y mucho masmas
GridView DetailsView FormView
Vinculación 2-WayVinculación 2-Way
Los controles de datos proveen soporte de Los controles de datos proveen soporte de presentaciónpresentación Propiedades AutoGenerateXxxButtonPropiedades AutoGenerateXxxButton Propiedades Insert/EditRowStylePropiedades Insert/EditRowStyle Eventos para hacer Inserting, Updating, Eventos para hacer Inserting, Updating,
DeletingDeleting
Los controles Data Source proveen la Los controles Data Source proveen la lógica de:lógica de: Propiedades Insert/Update/DeleteCommandPropiedades Insert/Update/DeleteCommand Propiedades Insert/Update/DeleteParametersPropiedades Insert/Update/DeleteParameters Eventos Inserting, Updating, DeletingEventos Inserting, Updating, Deleting
Visual Studio lo hace sencillo de lograrVisual Studio lo hace sencillo de lograr
Caching (Cacheo)Caching (Cacheo)
Los controles Data Source proveen Los controles Data Source proveen soporte interno para hacer cacheo soporte interno para hacer cacheo EnableCaching – habilita/deshabilita el EnableCaching – habilita/deshabilita el
cacheocacheo CacheDuration – Tiempo en segundosCacheDuration – Tiempo en segundos CacheExpirationPolicy - Sliding or CacheExpirationPolicy - Sliding or
absoluteabsolute CacheKeyDependency/CacheKeyDependency/
SqlCacheDepedency - Cache SqlCacheDepedency - Cache dependenciasdependencias
Cacheo de datos sin códigoCacheo de datos sin código
CacheSyncCacheSync
Dependencias de cacheo SQL (SQL Cache Dependencias de cacheo SQL (SQL Cache Dependecies)Dependecies) Acopla los elementos del cache a entidades de Acopla los elementos del cache a entidades de
una base de datosuna base de datos Sincroniza y mantiene actualizados el cache Sincroniza y mantiene actualizados el cache
cuando cambios en las bases de datos se cuando cambios en las bases de datos se efectúanefectúan
Trabaja con SQL Server 7, SQL Server Trabaja con SQL Server 7, SQL Server 2000, y SQL Server 20052000, y SQL Server 2005 Requiere una breve preparación para SQL Requiere una breve preparación para SQL
Server 7 y SQL Server 2000 a través de Server 7 y SQL Server 2000 a través de (Aspnet_regsql.exe)(Aspnet_regsql.exe)
"Just works" con SQL Server 2005"Just works" con SQL Server 2005
Una característica muy solicitada en Una característica muy solicitada en ASP.NETASP.NET
Data AccessData Access
Haaron Gonzalez, MVP, MCAD, Haaron Gonzalez, MVP, MCAD, MCTMCTChief Solution ArchitectChief Solution ArchitectPlexIT ConsultingPlexIT [email protected]@plexit.com.mx
Servicio MembershipServicio Membership
Administra usuario y credencialesAdministra usuario y credenciales Acceso declarativo vía Web Site Admin Acceso declarativo vía Web Site Admin
ToolTool Acceso programático vía clase Acceso programático vía clase
MembershipMembership Simplifica la autentificaciónSimplifica la autentificación
Provee la lógica para validar usuarios y Provee la lógica para validar usuarios y contraseñas, creación de cuentas y contraseñas, creación de cuentas y mucho masmucho mas
Provee de un almacén de datos para Provee de un almacén de datos para guardar credenciales, cuentas de correo guardar credenciales, cuentas de correo y mucho masy mucho mas
Modelo Provider para flexibilidad de Modelo Provider para flexibilidad de almacenamientoalmacenamiento
Esquema MembershipEsquema Membership
Membership API
MembershipData
SQL Server OtherData Stores
Membership Providers
ActiveDirectory
Login LoginStatus LoginView Other
Controls
Membership MembershipUser
SqlMembershipProvider
ActiveDirectory-MembershipProvider
Other Providers
Role ManagerRole Manager
Seguridad basada en rolesSeguridad basada en roles Acceso declarativo vía Web Site Admin Acceso declarativo vía Web Site Admin
ToolTool Acceso programático vía clase RolesAcceso programático vía clase Roles
Simplifica agregar funcionalidad de Simplifica agregar funcionalidad de seguridad basada en roles para sitio seguridad basada en roles para sitio que requieren autentificaciónque requieren autentificación Mapea usuarios a roles en cada petición Mapea usuarios a roles en cada petición
(request)(request) Provee de almacén de datos para la Provee de almacén de datos para la
información de rolesinformación de roles Modelo Provider para flexibilidad de Modelo Provider para flexibilidad de
almacenamientoalmacenamiento
Esquema Administración Esquema Administración RolesRoles
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
Controles LoginControles Login Presentación (IU) y lógica para tareas Presentación (IU) y lógica para tareas
relacionadas con seguridadrelacionadas con seguridad
Login
Password-Recovery
LoginStatusLoginName
LoginViewCreateUser-
Wizard
Change-Password
Membership &Role Management
LoginViewLoginView
<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>
Membership and RolesMembership and Roles
Haaron Gonzalez, MVP, MCAD, Haaron Gonzalez, MVP, MCAD, MCTMCTChief Solution ArchitectChief Solution ArchitectPlexIT ConsultingPlexIT [email protected]@plexit.com.mx
ProfilesProfiles
Persiste datos por usuarioPersiste datos por usuario Acceso fuertemente tipadoAcceso fuertemente tipado Asociar información adicionalAsociar información adicional Podemos especificar la estructuraPodemos especificar la estructura Ideal para Mis FavoritosIdeal para Mis Favoritos
Modelo Provider para flexibilidad de Modelo Provider para flexibilidad de almacenamientoalmacenamiento
Definición de un ProfileDefinición de un Profile
<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>
ProfilesProfiles
Haaron Gonzalez, MVP, MCAD, Haaron Gonzalez, MVP, MCAD, MCTMCTChief Solution ArchitectChief Solution ArchitectPlexIT ConsultingPlexIT [email protected]@plexit.com.mx
Navegación basada en Navegación basada en datosdatos La navegación en la IU es tedioso de La navegación en la IU es tedioso de
implementarimplementar Especialmente si confiamos en script del Especialmente si confiamos en script del
lado del cliente para lograrlolado del cliente para lograrlo Nuevos controles simplifican esta Nuevos controles simplifican esta
tareatarea TreeView y MenuTreeView y Menu SiteMapDataSourceSiteMapDataSource SiteMapPathSiteMapPath
Modelo Provider para flexibilidad de Modelo Provider para flexibilidad de almacenamientoalmacenamiento
Esquema Site NavigationEsquema Site Navigation
Site Map API
Site Maps
Web.sitemap OtherData Stores
Controls Menu TreeView SiteMapPathSiteMap-
DataSource
SiteMap
SiteMapNodeSiteMapNode SiteMapNode
XmlSiteMapProvider Other Site MapProviders
Providers
XML Site MapXML 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>
Security TrimmingSecurity Trimming Característica para site map Característica para site map
providersproviders Varia la IU de navegación basado en Varia la IU de navegación basado en
los roleslos 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>
Site NavigationSite Navigation
Haaron Gonzalez, MVP, MCAD, Haaron Gonzalez, MVP, MCAD, MCTMCTChief Solution ArchitectChief Solution ArchitectPlexIT ConsultingPlexIT [email protected]@plexit.com.mx
© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Top Related