SharePoint 2007 : Création et Modification d'une liste via le Modèle Objet

Si vous êtes comme moi (comprenez, si vous êtes aussi fainéant que moi), vous n'aimez pas les tâches répétitives comme créer des listes, rajouter des colonnes, configurer les vues, ajouter des éléments à une liste (surtout si il s'agit de rajouter 3000 éléments à la liste en question), etc...

Votre premier réflèxe est d'essayer d'automatiser tout ça. Pour cela vous avez plusieurs possibilités : Manipuler le modèle objet SharePoint ou le faire via l'interface SharePoint...

Ce qui m'intéresse ici est d'utiliser le modèle objet pour automatiser la création d'une liste, rajouter des colonnes et modifier la vue principale. 

Regardons comment faire :

//Creation de la liste

Guid id = web.Lists.Add("RandomData", "", SPListTemplateType.GenericList);

list = web.Lists.GetList(id, false);

//Ajout de Fields

list.Fields.Add("DateTime", SPFieldType.DateTime, true);

list.Fields.Add("Choice", SPFieldType.Choice, true);

 

SPFieldDateTime dateTimeField = (SPFieldDateTime)list.Fields.GetField("DateTime");

 

//Configuration de Field Choice

SPFieldChoice choiceField = (SPFieldChoice)list.Fields.GetField("Choice");

choiceField.DefaultValue = "true";

choiceField.EditFormat = SPChoiceFormatType.Dropdown;

 

string[] choices = new string[2] { "true", "false" };

foreach (string choice in choices)

{

    choiceField.Choices.Add(choice);

}

choiceField.Update();

 

//Modification de la Vue pour afficher les nouvelles collonnes

SPView spView = list.DefaultView;

 

if (!spView.ViewFields.Exists("Choice") && !spView.ViewFields.Exists("DateTime"))

{

    spView.ViewFields.Add(choiceField);

    spView.ViewFields.Add(dateTimeField);

}

 

//Cette ligne n'est pas nécessaire mais je voulais montrer les problèmes d'affichage

//lié aux listes contenant un grand nombre d'éléments, ici nbItemToCreate vaut 3000

spView.RowLimit = nbItemToCreate;

spView.Update();

//On affiche la liste sur le menu

list.OnQuickLaunch = true;

list.Update();

Ce qui vous donnera :

image

<Philippe/>

Publié jeudi 13 décembre 2007 14:30 par phil
Classé sous ,
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

# re: SharePoint 2007 : Création et Modification d'une liste via le Modèle Objet @ jeudi 13 décembre 2007 14:48

je pense que tu as des soucis de couleur de textes :(

khamlon

# re: SharePoint 2007 : Création et Modification d'une liste via le Modèle Objet @ jeudi 13 décembre 2007 15:26

Je ne vois pas de quoi tu veux parler :)

bizarre ca marchait tout à l'heure.

Je corrige ça :)

phil

About phil

Leader Technique SharePoint chez Winwise, je m'occupe de missions d'expertise autour de WSS 3.0 et MOSS 2007, tout en me tenant au courant de ce qui se fait autour de Asp.net, Silverlight et des technologies Web by Microsoft en général.

Les 10 derniers blogs postés

- PDC 2008 - J-14 ! par Nix's Blog le il y a 22 minutes

- [Silverlight] La version finale de Silverlight 2 sera disponible en téléchargement demain ! par Thomas Lebrun le il y a 2 heures et 16 minutes

- SharePoint 2007 : Professional Developers Conference 2008 par Philippe Sentenac [MVP SharePoint] le il y a 8 heures et 9 minutes

- [Silverlight] En attendant Silverlight 2 RTW par Blog Technique d'Audrey PETIT le 10-11-2008, 21:55

- Le nouveau Gojira, c’est pour lundi… par CoqBlog le 10-11-2008, 01:18

- SharePoint : nouvel article sur la mise en place des Scopes dans MOSS Searchs par Blog Technique de Romelard Fabrice le 10-10-2008, 17:52

- Hello CS par Le Blog de julz le 10-10-2008, 12:26

- MSDN/TechNet/Microsoft Days Tour 2008 à Lille les 13 et 14 Octobre ! par RedoBlog - The .NET Gentleman !!! le 10-10-2008, 09:35

- MVC Pratique #07 - Un projet concret et le transfert des objets avec les ModelBinders par #Rui le 10-09-2008, 23:39

- SQL Server 2008 : Certifié - TS Admin (70-432) par SQL Server vu par Christian Robert le 10-09-2008, 10:58