Anleitung und Hinweise zur Benutzung des
Silverlight 2.0 Sharepoint Web Parts
Einführung
Web Parts sind die zentrale UI-Komponenten auf einer Sharepoint Seite. Wie man ASP.NET
Controls dort in eigen entwickelten Web Parts verwenden kann ist schon an vielen Stellen
beschrieben. Aber es kommt natürlich auch die Idee auf in Web Parts neue Technologien wie
Ajax und eben auch Silverlight 2.0 zu verwenden. Wie das geht und wie man den Sharepoint
Server 2007 konfigurieren muss damit man Ajax und Silverlight verwenden kann ist in
diesem Dokument beschrieben.
Technische Voraussetzungen
Windows Server 2003 oder Windows Server 2008
.NET Framework 3.5 SP1
Windows Sharepoint Services 3.0 SP1 optional Sharepoint Server 2007
Visual Studio 2008 (Standard, …)
Silverlight Tools für Visual Studio 2008
Visual Studio Extension for Windows Sharepoint Services 1.2
Anpassen der web.config damit der Sharepoint Server Ajax
und Silverlight unterstützt.
1. Zuerst eine neue „sectionGroup“ im Bereich anlegen
2. Dann müssen neuere http Handler für ASMX und AXD Requests registiert werden. Diese
werden unter eingetragen.
3. Im Bereich ein neues Module hinzufügen
4. In der Sektion folgende Assemblies eintragen
5. Im Bereich folgende Controls registrieren
6. Hinter dem schließenden den kompletten Bereich
hinzufügen
7. Bei den Einträgen im Bereich folgende Bindings
hinzufügen
8. Die Silverlight DLL muss auch noch zu der Liste der hinzugefügt werden
und die die DLL (System.Web.Silverlight.dll) auch in das Bin Verzeichnis kopiert werden
9. Dann noch die Silverlight DLL (System.Web.Silverlight.dll) auch in das Bin Verzeichnis
kopieren
Wenn die Silverlight Tools für Visual Studio 2008 installiert sind findet man die DLL unter:
C:\Program Files\Microsoft SDKs\Silverlight\v2.0\Libraries\Server
Das Bin Verzeichnis liegt bei einer Standard Installation von WSS bzw. MOSS 2007 unter:
C:\Inetpub\wwwroot\wss\VirtualDirectories\80\bin
10. Mime Type Eintrag für *.xap im Internet Information Server überprüfen und gegeben
falls hinzufügen.
a. Windows Server 2003
Dazu unter den Administrativen Tools den „Internet Information Services (IIS) Manager“
starten. Im Manager dann die Server Instanz anklicken:
Abbildung 1: Internet Information Services (IIS) Manager
Mit der rechten Maustaste anklicken und Properties auswählen. Im folgenden Dialog dann
auf den Button „MIME Types“ klicken.
Abbildung 2: IIS Konfigurations-Dialog
Wenn in der Liste der Typ *.xap bereits registriert ist muss nichts Weiteres unternommen
werden. Wenn jedoch noch kein .xap Mime Type registriert ist mit klcik auf New den Mime
Type „application/x-silverlight-2“ wie in der linken Box angezeigt registrieren.
Abbildung 3: MIME Type Registrierung
b. Windows Server 2008
Dazu unter den Administrativen Tools den „Internet Information Services (IIS) Manager“
starten. Im Manager dann die Server Instanz anklicken:
Abbildung 4: Konfiguration IIS 7
Dann auf das Symbol MIME Types doppelklicken. Wenn der MIME Type .xap noch nicht
eingetragen ist, über „Add“ unter dem Actions-Bereich links oben. Den Mime Type
„application/x-silverlight-2“ hinzufügen.
Abbildung 5: MIME Type .xap registrieren
11. Damit auch alle Änderungen wirksam werden startet man den Internet Information
Server am Besten noch mal neu. Das kann man über den IIS Manager tun, oder aber in der
Kommandozeile „iisreset“ aufrufen.
Installation des Silverlight Web Parts
1. Die beiden Zip Files „SilverlightWebPart.zip“ und „MyMediaPlayer.zip“
herunterladen.
2. SilverlightWebPart.zip entpacken
3. Das Projekt SilverlightWebPart öffnen. Im Menüpunkt Build->Rebuild all anklicken.
Man kann das Web Part jetzt direkt aus Visual Studio heraus deployen oder manuell.
a. Automatische Installation (Visual Studio)
Im Build Menü auf Build -> Deploy SilverlightWebPart klicken. Dann baut Visual
Studio automatisch eine Solution (*.wsp) installiert diese und aktiviert auch gleich
das darin enthaltene Feature. Ein kleiner Nachteil dieser Methode ist, dass Visual
Studio auch den Application Pool neu startet, was bedeutet, dass der erste Zugriff
dann auf den Sharepoint Server etwas länger dauert.
b. Manuelle Installation
Die Dateien SilverlightWebPart.dll und SilverlightWebPart.pdb in das bin Verzeichnis
des Sharepoint Servers kopieren der Pfad ist bei Standard Installation:
C:\Inetpub\wwwroot\wss\VirtualDirectories\80\bin
Dann in der web.config, die befindet sich im Verzeichnis:
„C:\Inetpub\wwwroot\wss\VirtualDirectories\80“,
die DLL als Safe Control registrieren:
.
.
.
4. Auf der Sharepoint Site rechts oben bei Site Actions den Punkt „Site Settings“
anklicken.
5. Dann den Link ganz rechts „Go to top level site settings” anklicken.
6. Unter der Rurik “Galleries” den Link “WebParts” anklicken.
7. Hier in der Toolbar links oben auf „New“ klicken
8. In der Liste das neue WebPart selektieren und dann den Button „Populate Gallery“
klicken.:
Abbildung 6: New Part Admin Seite in Sharepoint
9. Jetzt auf die Seite navigieren zu der das Silverlight Web Part hinzu gefügt werden
soll.
10. Auf der Seite dann unter den „Site Actions“ „Edit Page auswählen.
11. Dann bei einer der Web Part Zones auf klicken.
12. In der Liste dann das Silverlight Web Part selektieren und den Add Button klicken
Abbildung 7: Add Web Part Dialog
Sollte das Web Part in der Liste nicht aufgeführt sein, dies kann bei manueller
Installation vorkommen, einfach den IIS nochmal neu starten. Also z.B. iisreset
aufrufen.
Installation der Silverlight Applikation (*.xap) und
Konfiguration des Silverlight Web Parts
In der Zip Datei ist eine Silverlight Applikation enthalten. Dabei handelt es sich um
einen Silverlight Media Player. Nach dem Entpacken der Dateien findet man im Client
Bin Verzeichnis die Datei MyMediaPlayer.xap und ein Demo Filmchen Bear.wmv.
1. Installation der Silverlight Applikation im ClientBin Verzeichnis
Hierzu einfach unter dem Verzeichnis:
C:\Inetpub\wwwroot\wss\VirtualDirectories\80
Ein neues Verzeichnis mit dem Namen ClientBin erzeugen und die beiden Dateien
MyMediaPlayer.xap und bear.wmv dort hinein kopieren.
Jetzt muss nur noch der die Silverlight Applikation im Silverlight Web Part mit
relativem Pfad angegeben werden.
Dazu am Web Part rechts oben auf edit klicken und im Kontextmenü „Modify Shared
Web Part“ auswählen. Dann im rechten Bereich den Punkt Miscellaneous
expandieren und bei XAP Url die Silverlight Applikation eintragen.
Abbildung 8: Konfiguration Silverlight Web Part
Dann auf Ok klicken. Jetzt sollte der Media Player im Web Part ablaufen:
Abbildung 9: Der Silverlight Media Player im Web Part
1. Installation der Silverlight Applikation in einer Document Library auf dem
Sharepoint Server.
Auf dem Sharepoint Server auf eine Document Library navigieren, oder eventuell
auch eine neue Document Library anlegen. Dort dann über „Upload Document“ oder
gleich mit „Upload multiple Documents“ die Dateien MyMediaPlayer.xap und
bear.wmv in diese Document Library hochladen.
Abbildung 10: Upload in Document Library
Jetzt mit der rechten Maustaste auf den Link MyMediaPlayer klicken und dann im
Context Menü auf “Copy Shortcut” klicken.
Jetzt zurück auf die Seite navigieren, wo das Silverlight Web Part eingefügt wurde.
Dann über Edit-> „Modify Shared WebPart“ die Web Part Konfiguration starten,. Den
Punkt Miscellaneous expandieren und unter „XAP Url“ den kopierten Shortcut
einfügen und dann auf Ok klicken:
Abbildung 11: Web Part Konfiguration
Danach ist der Silverlight Media Player im Web Part sichtbar.
Abbildung 12: Silverlight Media Player im Web Part
Mit diesem Web Part ist möglich jegliche Silverlight Applikation innerhalb des Silverlight
Web Parts ablaufen zu lassen. Sogar das Deployment der Silverlight Applikationen innerhalb
einer Document Library ist somit einfach möglich.
Ich habe auch noch ein paar andere Tipps und Tricks rund um Sharepoint in einem Blog
veröffentlicht, also einfach mal auch auf http://blogs.msdn.com/martinv vorbeischauen.
Viele Grüße
Martin Vollmer
Microsoft Deutschland GmbH
Developer Platform & Strategy Group
Links
Die Silverlight Seite im Web:
http://silverlight.net/
SharePoint Developer Centers:
http://msdn.microsoft.com/sharepoint
http://msdn2.microsoft.com/en-us/sharepoint/
SharePoint Product Center
http://www.microsoft.com/sharepoint
Windows SharePoint Services Web Parts Resource Center
http://msdn.microsoft.com/en-us/sharepoint/bb851483.aspx
The Sharepoint Introduction for .Net Developers
http://www.microsoft.com/click/SharePointDeveloper/
Auf Codeplex ( www.codeplex.com )gibt e seine Menge Tools und Templates für Sharepoint.
Einfach „Sharepoint“ in der Suche eingeben.
Sharepoint Blogger
Sharepoint Team Blog
http://blogs.msdn.com/sharepoint/
Jan Tielens
http://weblogs.asp.net/jan/
Gute Infos zu WSS und Sharepoint unf auch ASP.NET Controls
Autor des SmartPart Web Parts (Container für ASP.NET user controls,
http://www.codeplex.com/smartpart )
Dan Winter
http://blogs.msdn.com/dwinter/default.aspx
Viele gute Tipps und Beispiele