1 / 34

SharePoint 2003 Web Part Programmierung

SharePoint 2003 Web Part Programmierung. Sebastian Weber Microsoft Deutschland GmbH Sebastian.Weber@microsoft.com http://blogs.msdn.com/sebweber. SharePoint Entwicklungsszenarien. SharePoint als Oberfläche Look&Feel anpassen (Front Page 2003)

xenos
Download Presentation

SharePoint 2003 Web Part Programmierung

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SharePoint 2003Web Part Programmierung Sebastian Weber Microsoft Deutschland GmbH Sebastian.Weber@microsoft.com http://blogs.msdn.com/sebweber

  2. SharePoint Entwicklungsszenarien • SharePoint als Oberfläche • Look&Feel anpassen (Front Page 2003) • Funktionalitäten mit eigenen Web Parts erweitern • SharePoint als Engine • Dokumentenablage, Recherche, Listen • Zugriff über Web Services von Fat-Client oder Web-App

  3. Ziel des Vortrages • Wie entwickele ich Web Parts? • Entwicklungsumgebung • Projektvorlagen • Web Part Installation • Welche Features bietet SharePoint? • Konfiguration durch Anwender • Web Parts verbinden • Zugriff auf SharePoint Objekte

  4. Web Parts und Visual Studio 2005 • „Whidbey“ Web Parts ≠ SharePoint Web Parts • Nächste SharePoint Version wird auf Basis von Whidbey Web Parts arbeiten!  Aktueller Stand: http://blogs.msdn.com/MikeFitz

  5. Agenda Schnellstart: Erstellen, Installieren, Debuggen Konfigurierbare Web Parts Verbundene Web Parts Zugriff auf SharePoint Objekte

  6. Agenda Schnellstart: Erstellen, Installieren, Debuggen Konfigurierbare Web Parts Verbundene Web Parts Zugriff auf SharePoint Objekte

  7. Die perfekte Entwicklungsumgebung • „Eine Maschine“ • Direkt auf Windows Server 2003 arbeiten • http://www.msfn.org/win2k3/ • „Zwei (oder mehrere) Maschinen“ • Entwicklung auf Windows XP • Deployment auf Windows Server 2003 • Virtual PC oder externes System

  8. Die perfekte Entwicklungsumgebung • Visual Studio .NET 2003 • http://msdn.microsoft.com/sharepoint • SharePoint DLLs (bei „Mehr-Maschinen-Modell“) • C:\Program Files\Common Files\Microsoft Shared\web server extensions\60\ISAPI • Microsoft.SharePoint.DLL • Microsoft.SharePoint.Portal.DLL • Microsoft.SharePoint.Portal.SingleSignon.DLL • Microsoft.SharePoint.Portal.SingleSignon.Security.DLL • Debuggen per Attach-Process an W3WP.EXE

  9. Das 5 Minuten Web Part

  10. 5 Minuten Web Part Wrap-up • Datei  Neu  C#  Web Part • CreateChildControls(), RenderWebPart() • DWP-Datei anpassen • Projektausgabe in BIN-Verzeichnis • SafeControl-Eintrag in Web.config vornehmen • Fertig! Verwendung in SharePoint möglich

  11. Agenda Schnellstart: Erstellen, Installieren, Debuggen Konfigurierbare Web Parts Verbundene Web Parts Zugriff auf SharePoint Objekte

  12. Anwender konfigurieren Web Parts

  13. Deklarative Programmierung • Öffentliche Eigenschaften werden durch das Voranstellen von Attributen zur Bearbeitung freigegeben • Die Web Part Infrastruktur nimmt diese automatisch in der Toolpart auf • Persistenz der Werte, unterschieden nach Shared und Personal, erfolgt ebenfalls durch Infrastruktur

  14. Konfigurierbare Web Parts

  15. Custom Tool Parts • Custom Tool Parts ermöglichen aufwendigere bzw. individuellere Konfigurationen am Web Part • Implementierung erfolgt in 2 Schritten: • Erstellung des Tool Parts (Template vorhanden)Implementierung von ApplyChanges(), SyncChanges(), CancelChanges() und RenderToolPart() • Tool Part dem Web Part zuweisenÜberschreiben der Methode GetToolParts() im Web Part

  16. Agenda Schnellstart: Erstellen, Installieren, Debuggen Konfigurierbare Web Parts Verbundene Web Parts Zugriff auf SharePoint Objekte

  17. Web Parts Datenaustausch

  18. Verbindung erfolgt zur Laufzeit • Datenaustausch per Events • Daten-Consumer und –Provider • Verbindungen werden vom Anwender konfiguriert • Client- oder serverseitige Verbindungen • Event Handling übernimmt die Infrastruktur • Nur Implementierung der Consumer-/Provider-Schnittstellennotwendig • Klassen-Vorlagen für Visual Studio vorhanden • Bestandteil der Web Part Projekt-Vorlage

  19. Zwei Schnittstellen, eine Verbindung • Schnittstellenpaare • ICellProvider, ICellConsumer • IRowProvider, IRowConsumer • IListProvider, IListConsumer • IFilterProvider, IFilterConsumer • IParametersInProvider, IParametersInConsumer • IParametersOutProvider, IParametersOutConsumer • Weitere Kombinationen mit Transformatoren • Implementierung von Consumer und Provider erfolgt grundsätzlich analog

  20. Verbundene Web Parts

  21. Verbundene Web Parts Wrap-up Beispiel ICellProvider • Events CellReady und CellProviderInit deklarieren • CellConsumerInit „implementieren“ • Interface registrieren in EnsureInterfaces • CanRunAt überschreiben • PartCommunicationConnect überschreiben • PartCommunicationMain überschreiben, CellReady feuern

  22. Agenda Schnellstart: Erstellen, Installieren, Debuggen Konfigurierbare Web Parts Verbundene Web Parts Zugriff auf SharePoint Objekte

  23. SharePoint Services Klassen (Auszug) • Security • SPGroupCollection • SPGroup • SPUserCollection • SPUser • Documents • SPDocumentLibrary • SPFileCollection • List Data • SPListCollection • SPList • SPListItemCollection • SPListItem • SPFieldCollection • SPView • Administration • SPGlobalAdmin • SPQuota • SPVirtualServer

  24. SharePoint Portal Server Klassen • Insgesamt über 50 Namensräume, davon 16 heute in Verwendung • Namensraum Microsoft.SharePoint.Portal.* • Erweitert das WSS-Objektmodell um • Audiences • Areas • Search • Single Sign-on

  25. SharePoint Top-Level Objekte • WSS-Objektmodell hat 4 Top-Level Objekte: • SPWeb ( “Eine Site”) • SPSite (“Eine SiteCollection”) • SPVirtualServer • SPGlobalAdmin • Für sämtliche Datenoperationen (Listen, Dokumentenbibliotheken …) wird ein SPWeb benötigt!

  26. Idealer Einstiegspunkt: SPWeb • Ermöglicht Zugriff auf Listen, Dokumente, Benutzer, Benachrichtigungen einer Site • Eigenschaften (Beispiel): • Web.Lists (liefert eine Collection aller Listen) • Web.Title (liefert den Titel der Seite) • Web.Users (liefert die Benutzer der Seite) • Zugriff auf das aktuelle SPWeb Objekt geschieht mit SPControl über den Kontext: SPWeb web = SPControl.GetContextWeb(Context);

  27. Zugriff auf Listen

  28. Zugriff auf Listen Wrap-up • Liste über das Web-Objekt beziehen SPWeb web = SPControl.GetContextWeb(Context); SPList myList = web.Lists[“Aufgaben”]; • Verweis auf die Einträge der Liste über die Items-Eigenschaft SPListItemCollection items = myList.Items; • alternativ kann die Liste über ein SPQuery Objekt eingeschränkt werden SPListItemCollection items = myList.GetItems(query); • Zugriff auf die Felder geschieht über den Indexer des SPListItem Objekts foreach(SPListItem item in items) { Response.Write(item[“Title"].ToString()); }

  29. Agenda Schnellstart: Erstellen, Installieren, Debuggen Konfigurierbare Web Parts Verbundene Web Parts Zugriff auf SharePoint Objekte

  30. Zusammenfassung (I) • Ideale Entwicklungsumgebung besteht aus einer(!) Maschine, VS.NET mit SharePoint Templates und DLL-Ausgabe direkt ins BIN-Verzeichnis • Die Entwicklung von Web Parts verläuft analog zur ASP.NET Steuerelement-Programmierung; Ableitung von der WebPart-Basisklasse macht das Control zum WebPart

  31. Zusammenfassung (II) • Das SharePoint Objektmodell ermöglicht den Zugriff auf sämtliche Einstellungen und Objekte aus einem Web Part heraus • Whidbey Web Parts sind was anderes

  32. Fragen und Antworten Vielen Dank! Sebastian Weber Sebastian.Weber@microsoft.com http://blogs.msdn.com/sebweber

  33. © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

  34. Weitere Informationen • Entwicklerseiten • http://msdn.microsoft.com/sharepoint • http://gotdotnet.com/team/sharepoint • http://code-zone.de • Produkt • http://microsoft.de/sharepoint • Third-Party Seiten • http://blogs.msdn.com/mikefitz (Mike Fitzmaurice) • http://mysharepoint.de (Michael Greth)

More Related