SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Verwenden eigener ListTemplates

Geprüfte Antwort Dieser Beitrag hat 2 Antworten

Ohne Rang
3 Beiträge
Christian randomNumber erstellt 21 Mai 2014 22:24
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

Ich habe ein Problem bei dem Versuch, einem SPWeb-Objekt ein SPList-Objekt hinzuzufügen, welches über ein selbsterstelltes ListTemplate erstellt wird. Mein Code sieht folgendermaßen aus:

 

        public void specificSPWeb(String Url, String ListDescription, DefaultWerte DW)
        {
            using (SPSite siteCollection = new SPSite(Url))
            {
                using (SPWeb web = siteCollection.OpenWeb())
                {

                    //Get ListenVorlage
                    try
                    {
                        // Get Solutions Gallery
                        SPDocumentLibrary solutions = (SPDocumentLibrary)siteCollection.GetCatalog(SPListTemplateType.SolutionCatalog);

                        // Solution-File mit WebTemplate hochladen
                        solutionFileList = solutions.RootFolder.Files.Add("VorlageListe.stp", System.IO.File.ReadAllBytes(@"C:\Users\...\Documents\Test\VorlageListe.stp"));

                    }
                    catch (Exception e)
                    {
                        solutionFileList = web.GetFile("_catalogs/solutions/VorlageListe.stp");
                    }

                    SPListTemplateCollection listTemplates = web.Site.GetCustomListTemplates(web);
                   
                    foreach(SPListTemplate listTemplate in listTemplates)
                    {
                        if (listTemplate.Name == "StudiVorlageListe")
                        {
                            //Wird umfangreicher, sobald das Erstellen der Listen an sich funktioniert.

                            web.Lists.Add("TestList", "Description", listTemplate);
                            SPList oList = web.Lists["TestList"];
                            break;
                        }
                    }

                }
            }
        }

Im ersten Teil meines Codes (oberhalb der roten Zeile) lade ich die Vorlage in eine SolutionGallery - im zweiten Teil des Codes versuche ich, via "web.Site.GetCustomListTemplates(web);" an die selbsterstellten ListTemplates des SPWeb-Objektes zu gelangen.

Dass das auf diese nicht funktionieren kann, ist soweit erstmal offensichtlich.


Meine Frage  ist daher: Wie könnte ich sonst an mein selbsterstelltes ListTemplate kommen?

 

Viele Grüße

 

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 22 Mai 2014 08:51
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Listenvorlagen in stp-Dateien gehören nicht in die Solution Gallery, sondern in die List Template Gallery (_catalogs/lt)

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
3 Beiträge
Christian randomNumber Als Antwort am 22 Mai 2014 21:18
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das war die Lösung meines Problems - Danke!