+ All Categories
Home > Documents > Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Date post: 05-Apr-2015
Category:
Upload: warin-giesel
View: 119 times
Download: 0 times
Share this document with a friend
Popular Tags:
52
Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005
Transcript
Page 1: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic Program

Die Macht der WebParts Bernd Malter

Student Technology Conference 2005

Page 2: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005

Die Macht der WebParts

• Bernd Malter• Principal Consultant / Software Developer• Avanade• [email protected]

Page 3: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Agenda

• Der SharePoint Portal Server 2003• Die SPS 2003 Architektur• WebParts und WebControls• Fallbeispiele und Demos

Page 4: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Worum geht es?

• Dieser Vortrag dreht sich um die WebPart-Entwicklung für den SharePoint Portal Server 2003

• Einige Beispiele sollen sollen den Einstieg in die Programmierung erleichtern

Page 5: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Worum geht es nicht?

• Keine Einführung in das SPS Objektmodell

• Keine Einführung in die Web Services des SPS

• Keine Einführung in ASP.NET

Page 6: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Voraussetzungen

• Grundlegendes Verständnis des .NET Frameworks

• Grundlagen C# oder VB.NET• Hilfreich sind Grundlagen im Bereich

ASP.NET Controls• Interesse an Portallösungen

Page 7: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Szenario

• Erstellt werden soll eine Benuzterstatistik

• Eine Hitliste und momentane Benutzer sollen auf einer Seite angezeigt werden

Page 8: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Lösungsentwurf

• Tracking der Seitenaufrufe mittels eines HTTP-Modules und Schreiben der Daten in eine DB

• Lesen der DB-Daten über WebParts

Page 9: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Weitere Demos

• Lebenszyklus eines WebParts• WebParts Propertys• Verbundene WebParts

Page 10: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Der SharePoint Portal Server

• Vorstellung des SPS 2003– Basisfunktionen– Einfügen von WebParts

Page 11: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005WSS & Sharepoint Portal Server

Übergreifende Sites

Teams

SharePoint Portal Server

WindowsSharePoint

Services

UnternehmensportalUnternehmensportalDas “Einstiegsportal”

Page 12: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Windows SharePoint Services

• Workspaces• Check-In / Check Out• Versionierung• Benachrichtungen• Realtime-Kommunikation• Office Integration• Benutzungsstatistiken• Backup / Restore einzelner Sites• Site-Inaktiv-Benachrichtigung für den

Admin• u.v.a.m

Page 13: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005SharePoint Portal Server

• zentrale Administration vieler Sites• Verwaltung von Servern und Server-

Farmen• hohe Skalierbarkeit• übergreifende Volltext- und

Metadaten-Suche• EAI mit Single Sign On

Page 14: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Einrichten eines Portals

• Portal wird auf einem virtuellen Server des IIS eingerichtet

• Einrichtung geht mit wenigen „Klicks“– Name, virtueller Server & Admin-Konto

aussuchen– Sharepoint installiert die Services,

Datenbanken etc.

Page 15: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Einrichten einer Site

• Eine Site wird innerhalb eines bestehenden Portals eingerichtet

• Es gibt verschiedene Site-Vorlagen– Team-Site, Blank-Site, Decision Meeting

Worspace, Social Meeting Workspace…

• die Site-Einrichtung ebenfalls eine „5-Klick-Angelegenheit“– Name, Besitzer, URL, Region, Abteilung,..

Page 16: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Benutzerverwaltung

• Rollen werden in SQL Server verwaltet

• Rollen stellen einen Aufsatz zu Betriebssystemberechtigungen dar

Page 17: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Rechte und Rollen von Sites I

• Reader– Kann Listen einsehen

• Contributor– Kann Inhalte beitragen

Page 18: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Rechte und Rollen von Sites II

• Reader– Kann Listen einsehen

• Contributor– Kann Inhalte beitragen

Page 19: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Weitere Aktionen

• Bibliotheken anlegen• Listen anlegen• Diskussionsboards anlegen• Umfragen anlegen• Etc.

Page 20: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Ein tieferer Blick

• Ein Einblick in die Architektur• SPS 2003 besteht aus Datenbanken, DLLs,

ASPX-Seiten und XML und js-Dateien– Datenbanken nie direkt „anpacken“, auch

wenn es Spaß macht (und manches beschleunigt)

– XML-, js- und ASPX-Dateien eignen sich zum „Customizen“ (Vorsicht bzgl. des Supports)

– XML=CAML (schön kompliziert und fehleranfällig)

Page 21: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Ein SPS- aber doch ganz anders I

Page 22: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Ein SPS- aber doch ganz anders II

Page 23: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005SPS 2003 Architektur

• Verwaltete Objekte– Inhalt, Profile, Dienste

& Config DB Zugriff

• Job Server– Windows Taks– startet Profil Import– startet Indexierung– startet Zielgruppen-

Berechnung

• Index Gatherer– Scannt Inhaltsquellen &

erstellt Index Kataloge– Verteilt Volltext-Kataloge an

alle Search Server

• Search Server– Dedizierte Search Server

IIS

ASP.NET Handler

ISAPI Filter

Config

Statische SeitenFP RPCWebDAV

.aspx.asmx

HTTPRequests

ASP.NET

Content

WSSUnmanagedCode

Direct Safe

ISAPI Ext

ADO.NET

Service

Profile

Search

Index

Page 24: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005SPS und Unmanaged Code

IIS

ASP.NET Handler

Filter

Config

Statische SeitenFrontPage RPCDAV

.aspx.asmx

HTTPRequests

ASP.NET

Content

SharePointUnmanagedCode

Direct Safe

ISAPI Ext

ADO.NET

ProfileService

• SPS 2003 ist nicht nur .net.• Unmanged Code für

– FrontPage server extensions

– DAV– View rendering– Static document gets– Database I/O

Page 25: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005WebParts

• Und nun vom SPS zu den WebParts

Page 26: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Das Framework

ASP.NET Page

Zon

e 2

Zone 1

Zon

e 3

WebPart

Framework

ContentDB

ASP.NET PageWeb ControlsoderWeb Parts

ConfigDB

USERID & URL

Page 27: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005WebParts in einer Site

• WebParts sind die Informationscontainer in einer Site

• WebParts befinden sich in “Zones”

Page 28: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005WebParts

• Wiederverwendbare Bausteine für Portale– bestehen aus GUI & Programmierung

• Webparts können vom Administrator einer Site ohne Programmierung eingefügt werden– „drag-and-drop“ & „plug-and-play“

• WebPart Pages dienen als WP-Container• WebParts können miteinander

kommunizieren

Page 29: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Vordefinierte Web Parts - Beispiele

• Content Editor– Einfache, statische HTML-Inhalte

• Page Viewer– Ermöglicht Einbindung von Web-Seiten

• Exchange Integration– Kontakte, Kalender, Posteingang,..

• Discussion– Diskussions-Board

• etc.

Page 30: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005FrontPage- die Vorteile

• einfaches Tool zum Anpassen von SharePoint-Seiten

• schnelles Ändern des Designs• Darstellung von Web Services ohne Code zu

schreiben (DataView Web Part)• Einstellen von Web Part-Zonen-Eigenschaften• Editieren des HTML-Codes

Page 31: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005FrontPage- die Nachteile

• Wird eine Site mit FrontPage bearbeitet, wird sie immer aus der DB gelesen. Änderungen der Templates im Dateisystem werden ignoriert.

• Performance-Verluste durch DB-Zugriffe• Empfehlung: FrontPage für Demo-Systeme,

nicht für die Produktion

Page 32: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005.Net-Entwicklung I

• mit Templates für Visual Studio.Net können eigene Web Parts entwickelt werden– Web Part = ASP.Net Custom Controls

• WebPart Framework– Objektmodell für eigene Entwicklungen

Page 33: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005.Net-Entwicklung II

• Sharepoint Server & Services Object Model für die Lösung spezieller Aufgabenstellungen

• XML Web Services für den Zugriff auf Remote-Server

Page 34: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Das Objektmodell- eine Grundlage

– SPGlobalAdmin • Zuständig für die globale Administration

– SPVirtualServer • Repräsentiert einen virtuellen Server

– SPSite • Repräsentiert eine Site Collection (keine einzelne Site, der

Name irritiert)– SPWeb

• Repräsentiert eine einzelne Site– SPList

• Repräsentiert eine Liste, z.B. eine Document Library– SPListItem

• Eintrag in einer Liste– SPField

• Attribute eines Listeneintrages (Metadaten eines Dokuments)

Page 35: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Hello World WebPart

• WebPart Templates für Visual Studio .NET sollten installiert sein

• “WebPart library” Projekt öffnen• Ein einfaches “Hello world”

public class SayHello : Microsoft.SharePoint.WebPartPages.WebPart{protected override void RenderWebPart(HtmlTextWriter output)

{output.Write(SPEncode.HtmlEncode(“Hello World!));}

}

Page 36: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005WebParts und Web Controls

System.Web.UI.Control

Custom Control

System.Object

Microsoft.SharePoint.WebPartPages.WebPartSystem.Web.UI.WebControls.WebControl

Web Part

WebParts sind User Controls

Page 37: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005WebPart Manuellles Deployment

Deployment über DWP-Datei– Strong name – key in

assemblyinfo.cs. (optional)– Version– DLL befindet sich im Bin-Folder von

wwwroot.– Safe controls in web.config eintragen– DWP-Datei erstellen und importieren

Page 38: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment – .dwp file

• Aufbau einer DWP-Datei<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2"> <Assembly>AssemblyName(ohne .dll Extension), Version=VersionNumber, Culture=Culture, PublicKeyToken=PublicKeyToken</Assembly> <TypeName>WebPartNamespace.WebPartClassName</TypeName> <Title>DefaultWebPartTitle</Title> <Description>WebPartDescription</Description></WebPart>

• PublicKeyToken über sn ermittelnsn.exe -T c:\inetpub\wwwroot\bin\MyWebPart.dll

Page 39: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment -- Strong Name und

Version

• Schlüssel über sn erstellen– sn.exe - k c:\keypair.snk (sn.exe in

Program Files\Microsoft Visual Studio .NET\FrameworkSDK\Bin\ )

• Schlüssel-Datei in AssemblyInfo.cs– [assembly: AssemblyKeyFile("c:\\

keypair.snk")] – [assembly:

AssemblyVersion("1.0.0.0")]

Page 40: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment – Bin-Verzeichnis und

Safe Controls

• Im Projekt: Output Properties verweisen auf drive:\inetpub\wwwroot\bin. Die Alternative ist der GAC (drive: \Windows\Assembly)

• In web.config ein Safe Control eintragen<SafeControl Assembly=“MyWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bcdf8981322ffaa“ Namespace=“MyWebPart“ TypeName="*"/>

Page 41: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment – stsadm.exe I

• Stsadm unter drive:\Program Files\Common Files\Microsoft Shared\web server extensions\60\BIN

• Kopiere WebPart Assembly in das Bin Directory

Page 42: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment – stsadm.exe II

• Kopiere die .dwp-Datei in das WPCatalog Verzeichnis (drive:\\inetput\wwwroot\wpcatalog)

• Alle WebPart Resourcen werden in ein Subdirectory kopiert

• SafeControl in web.config eintragen• Cab-Datei wird in die

Konfigurationsdatenbank kopiert

Page 43: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment – stsadm.exe III

• WebPart Cab-Datei enthält:– die Assembly– .dwp file– Alle Resourcen (z.B. Bilder)– Manifest

• Stsadm.exe –o addwppack –filename path_to_webpart.cab (local_drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\bin)

Page 44: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Deployment – WPPackager Tool

• wppackager Tool zum Erstellen einer MSI-Datei

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnspts/html/sharepoint_deployingwebparts_msi.asp

Page 45: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Code Security – Permissions I

• ASP.Net hat Permissions wie IsolatedStorageFilePermission, MessageQueuePermission, OdbcPermission

Page 46: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Code Security – Permissions II

• Sharepoint fügt 2 Permissions hinzu – SharePoint Permission – Rechte, um

z.B. das Objektmodell der WSS anzusprechen

– WebPart Permission – Rechte, um WebParts Resourcen anzusprechen

Page 47: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Code Security – Trust Levels I

• ASP.NET definiert die Trust levels full, high, medium, low, minimal

• SharePoint fügt 2 Level hinzu:– WSS_Minimal– WSS_Medium

Page 48: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Code Security – Trust Levels

• Die neuen Level sind definiert in wss_minimaltrust.config und wss_mediumtrust.config unterlocal_drive:\Program Files\Common Files\Microsoft Shared\web server extensions\60\config

Page 49: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Code Security – Default

• Windows SharePoint Services setzen den Trust Level standardmäßig auf WSS_Minimal

• Trust Level wird in der web.config unter drive:\\inetpub\wwwroot definiert:<trust level="WSS_Minimal" originUrl="" />

Page 50: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Bin Deployment und Custom

Policy File

• 3 Wege, um Assemblies die korrekten Permissions zu geben:– Trust Level auf Full setzen: <trust

level="WSS_Minimal" originUrl="" />(“Schmutzig”, aber schnell gemacht)

– Assembly in das GAC kopieren•Empfehlung: custom policy verwenden

(Elegant, aber zeitintensiv, weil fehleranfällig)

Page 51: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005Web Parts - References

• http://msdn.microsoft.com/library/default.asp?url=/library/en-us/spptsdk/html/CreateABasicWP.asp

• http://msdn.microsoft.com/library/default.asp?url=/library/en-us/spptsdk/html/CreateWPCustomProperties.asp

• http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconcodeaccesspermissions.asp

Page 52: Microsoft Academic Program Die Macht der WebParts Bernd Malter Student Technology Conference 2005.

Microsoft Academic

Program

Student Technology Conference 2005

Mehr Informationen

• http://www.microsoft.com/sharepoint/downloads/components/detail.asp?a=431

• http://www.gotdotnet.com• http://www.sharepointcustomization.co

m/resources/webparts.htm• http://www.microsoft.com/technet/

prodtechnol/sppt/reskit/c3461881x.mspx


Recommended