Création de sites SharePoint via un service WCF appelé depuis un client WPF ou Silverlight 2


Article de David Rousset - Relation Technique Développeurs

Blog : http://blogs.msdn.com/davrous

 

 

 

Introduction

Créer des sites WSS ou SharePoint n’est parfois pas accessible à tous les types d’utilisateurs. Ils peuvent être un peu perdus dans l’interface d’administration. Par ailleurs, il faut que ces derniers disposent des droits suffisants pour effecteur cette opération. L’idée ici est donc de fournir une interface graphique potentiellement attrayante pour des utilisateurs non avancés afin de les laisser créer eux-mêmes certains sites WSS. Déporter une partie de l’administration SharePoint en quelque sorte. Le tout sans leur octroyer directement les droits d’administrations associés.

A travers ces différents articles, nous allons enrichir au fur et à mesure une solution pour passer d’une application console classique faisant appel à une librairie de code vers un découpage de type client WPF ou Silverlight 2 appelant le même code contenu dans un service WCF.

Nous allons ainsi voir comment de manière progressive:

1 – créer une logique de code de création d’un site WSS
2 – encapsuler cette logique dans un service WCF ensuite contenu dans un service NT
3 – appeler ce service WCF depuis un client WPF graphiquement simple
4 – faire évoluer ce client WPF vers quelque chose de plus élaboré graphiquement parlant
5 – appeler ce même service WCF depuis un client Silverlight 2

Nous allons donc partir de ce scénario :

Nous allons donc partir de ce scénario

Pour arriver à celui-ci :

Pour arriver à celui-ci

Dans le 1er scénario, nous serons obligés de faire tourner l’ensemble de la solution directement sur le serveur WSS. En effet, on ne peut utiliser le modèle objet de SharePoint que sur le serveur même.

Le 2ème scénario nous permettra de nous affranchir de cette limitation grâce aux appels distants fournis par WCF. Nous pourrons donc créer des sites depuis une machine distante avec des clients riches WPF ou Silverlight 2 tout en n’ayant pas directement les droits de création de sites.

L’ensemble du code et des articles ont été conçu avec la plateforme suivante :

-         Visual Studio 2008 SP1 / .NET Framework 3.5 SP1

-         Windows SharePoint Services 3.0 SP1

-         WCF / WPF & WPF ToolKit / Silverlight 2 & Silverlight Toolkit