none
Aide a propos des bibliothèques SMQ et leur lecture ! RRS feed

  • Question

  • j veux lire des donnée d'une bibliothèque de document SP , et qui contient un champs additional "approb" !

    mon code arrive a lire les données des colonnes par défaut ,mais nn ceux que j ajouté !

     

    Voilà mon Code :


     using (SPSite site = new SPSite(uriSMQ))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    SPDocumentLibrary docLib = (SPDocumentLibrary)web.Lists["Biblio"];
                   SPListItemCollection items = docLib.Items;
                    foreach (SPListItem ooItem in items)
                    {
                         string v = ooItem.File.Name.ToString();   // ça marche

                         string x = ooItem["approb"].ToString();   // ça marche pas

                                                                                      //  La référence d'objet n'est pas définie à une instance d'un objet

                    }

                }

             }

     

    THANK YOU !

    mardi 19 avril 2011 10:32

Réponses

  • Bonjour,

     

    C'est simplement car plusieurs éléments de ta liste n'ont pas la colonne "approb" remplie :
    Dans ce cas "ooItem["approb"]" est NULL. Et donc un .ToString() provoque un NullReferenceException.

    Donc pour corriger, tu peux faire :

     using (SPSite site = new SPSite(uriSMQ))
         {
           using (SPWeb web = site.OpenWeb())
           {
             SPDocumentLibrary docLib = (SPDocumentLibrary)web.Lists["Biblio"];
            SPListItemCollection items = docLib.Items;
             foreach (SPListItem ooItem in items)
             {
               string v = ooItem.File.Name.ToString();  
               string s = ooItem["approb"] as string; 
             }
          }
         }
    
    


    Sylvain Reverdy
    Consultant / Formateur à Winwise
    Mon blog
    mercredi 20 avril 2011 02:09
    Auteur de réponse

Toutes les réponses