Bonjour,

J'ai écrit un code qui permet d'ajouter un champ à content type d'une liste, mais ça marche uniquement pour les contents types que j'ai crée, les autres j'obtiens un message d'erreur "Le type de contenu"Dossier" à l'adresse "/Lists/List Droit" est fermé".

Autre chose, quand j'ouvre le content type pour voir si le champ est bien ajouté je ne le trouve pas.

J'espère que vous pourriez m'aider.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
try
            {
                SPContentType objSPContentType =   objSPContentTypeCollection[(String)listBox2.SelectedItem];
                MessageBox.Show(objSPContentType.Name);
                objSPWeb.Fields.Add("Lecteurs", SPFieldType.User, true);
                if (!objSPContentType.Fields.ContainsField(objSPWeb.Fields["Lecteurs"].Title))
                {
                    SPFieldLink objSPFieldLink = new SPFieldLink(objSPWeb.Fields["Lecteurs"]);
                    objSPContentType.FieldLinks.Add(objSPFieldLink);
                    objSPContentType.Update();
                    objSPWeb.Update();
                }
                else
                {
                    MessageBox.Show("Champ Lecteurs existe déjà !");
                }
            }
            catch (Exception E)
            {
                MessageBox.Show(E.Message);
            }