Upload
lena
View
47
Download
0
Embed Size (px)
DESCRIPTION
Desarrollo .NET sobre SharePoint. Jordi Rambla Consultor Rambla informàtica - Certia [email protected]. Agenda. Oportunidades de Desarrollo Desarrollo de Web Parts Sharepoint 2003 El Modelo de Objetos de SharePoint 2003 Los Web Services de SharePoint 2003. - PowerPoint PPT Presentation
Citation preview
Desarrollo .NET sobre SharePointJordi Rambla
Consultor
Rambla informàtica - Certia
Agenda
Oportunidades de Desarrollo
Desarrollo de Web Parts Sharepoint 2003
El Modelo de Objetos de SharePoint 2003
Los Web Services de SharePoint 2003
Desarrollo de Web-Part Desarrollo de Web-Part ‘Hola Mundo’‘Hola Mundo’
- Creación de Web Part- Creación de Web Part- Métodos Base de un Web Part- Métodos Base de un Web Part- HTML renderizado manualmente- HTML renderizado manualmente
Desarrollo de Web Parts
Plantillas de proyecto WebPart con VS.NET (MSDN Downloads)
Derivar de clase base de SharePoint
Implementar uno o mas interfaces de SharePoint
MiNamespace.WebParts.MiWebPartMiNamespace.WebParts.MiWebPart
Microsoft.SharePoint.WebPartPages.WebPartMicrosoft.SharePoint.WebPartPages.WebPart
System.Web.UI.ControlSystem.Web.UI.Control
Tu assembly
Microsoft.SharePoint.dll
System.Web.dll
Los ficheros de un Web Part
Tu Web-PartTu Web-Part
Assembly .NET encapsulando encapsulando
el código servidor el código servidor y renderización y renderización
del HTML del HTML
Un fichero DWP (basado en XML) que
guarda algunas Propiedades y valores que se necesitan para
cargar el assembly .NET
Un fichero ‘manifest’ (basado en XML) que guarda datos
a fusionar con el web.config
Fichero CABFichero CAB
STSADM.EXESTSADM.EXEUtilidad de instalación
Desarrollo Básico - Simple
1. Definir Propiedades ‘custom‘ del WebPart
2. Generar un ‘montón’ de HTML en el método RenderWebPart
Desarrollo Básico – Realista(Uso de WebControls internos)
1. Definir Propiedades ‘custom‘ del WebPart
2. Sobreescribir CreateChildControls
1. Instanciar web-controls y añadirlos a la colección de controles
3. Implementar el gestionador(es) del evento OnLoad
Conexión de Web Parts
Los Web Parts se pueden conectar si implementan los interfaces para conexiones (estándar SharePoint)
Interfaces Soportados
ICellProvider, ICellConsumer
IRowProvider, IRowConsumer
IListProvider, IListConsumer
IFilterProvider, IFilterConsumer
IParametersOutProvider, IParametersOutConsumer IParametersInProvider, IParametersInConsumer
Web Parts conectadasWeb Parts conectadas
NorthWind Customer y OrdersNorthWind Customer y Orders
Seguridad en páginas de Web Parts
Se permite a los usuarios modificar páginas directamente
No se permite ejecutar cualquier código:
No se permite ‘inline script’
‘Code behind’ si se permite
No se permite usar cualquier control de servidor
Lista de SafeControls en Web.Config
Da a los administradores control sobre qué clases pueden utilizarse
Code behind
Controles de Servidor
Web Parts
Deployment (Inst. En Producción)
Assemblies, Recursos y su localización
Los Assemblies pueden instalarse en el GACo en el directorio ‘bin’ del WebSite
Los Recursos se instalan en /_wpresources o /wpresources respectivamente
DWPs se instalan en el directorio /wpcatalog
Deployment (cont.)
GAC
Por defecto ‘Fully trusted’
Los Assemblies necesitan estar firmados con un strongname.
Disponible para todos los servidores virtuales de la máquina
Bin
Por defecto ‘Partial trust’
Disponible solo para un WebSite específico
Deployment (cont.)
WPPacks son ficheros ‘cab’ que contienen;
Manifest
Assemblies
Recursos
DWPs
La creación de .cabs permite a los administradores usar la utilidad ‘stsadm.exe’ para el deployment
Deployment (cont.)Mas allá, crear un .msi
Contiene el .cab
Usar el objeto SPGlobalAdmin del namespace Microsoft.SharePoint.Administration
AddWPPack
RemoveWPPack
EnumWPPacks
Deployment de políticas CAS usando el .msi
Deployment de Web PartsDeployment de Web Parts
Ejemplo de uso de stsadm.exeEjemplo de uso de stsadm.exePolíticas en *.configPolíticas en *.config
Oportunidad desarrollo:Acceso a SharePoint desde aplicaciones .NET
Dos opciones:
Modelo de objetos (assemblies) de SharePoint (p.e. acceder a SharePoint desde mi app. ASP.NET)
XML Web Services de SharePoint(p.e. acceder a SharePoint desde mi app. WinForms)
- Acceso a SharePoint desde aplicaciones .NET - Assemblies vs. Web Services
Modelo de Objetos .NET de SharePoint
Modelo de Objetos de ‘codigo gestionado’ en el servidor
Accessible desde ASP.NET o cualquier otro proceso en el servidor
Implementado en C#
Expone practicamente todos los datos guardados en SharePoint
¿Que se puede hacer con este Modelo de Objetos?
Ejemplos:Añadir, editar, borrar, y devolver datos de las Listas de SharePoint
Crear nuevas listas y establecer metadatos de listas (e.j. los campos en una lista)
Establecer propiedades de web
Trabajar con documentos en una Biblioteca de documentos.
Realizar tareas administrativas como crear webs, añadir usuarios, crear roles, etc.
SPVirtualServer
SPWebServer
SPGlobalConfig
SPSite
SPWeb
SPList
SPListItem
Resumen OM
El modelo de objetos tiene tres objetos principales de alto nivel:
SPWeb (representa un site individual)
SPSite (representa una colección de sites, que es un conjunto de web sites)
SPGlobalAdmin (utilizado para administración de configuración global)
Para poder realizar acciones en los datos de un web, primero hay que obtener siempre un objeto SPWeb.
Web Services de SharePoint
La capa de web services ‘publica’ la capa de OM.
Permite manipulación de Lists, Webs, Vistas, etc.
La Funcionalidad es similar al OM, pero algunos interfaces están optimizados para minimizar las transacciones.
Ejemplos
GetListCollection
GetListItems
GetWebCollection
UpdateList
UpdateListItems
GetWebInfo
GetWebPart
GetSmartPageDocument
Otros…
Uso de XML Web Services Uso de XML Web Services
Recursos
SDK de Sharepoint Services
Artículos de MSDN
A Developer's Introduction to Web Parts
Microsoft Windows SharePoint Services and Code Access Security
Packaging and Deploying Web Parts
Debugging Web Parts
Libro
Sharepoint Products & technologies Resource kit
Conclusiones desarrollo .NET sobre SharePoint 2003
SharePoint 2003 tiene muchas oportunidades para desarrolladores .NET permitiendo extender y crear soluciones propias basadas en SharePoint 2003.
Web Parts ‘Custom’ (Aplicaciones propias)
Acceso a elementos internos de SharePoint