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.




List-Element, Dokument programmatisch anhängen

Unbeantwortet Dieser Beitrag hat 2 Antworten

Ohne Rang
97 Beiträge
Su Si erstellt 27 Aug. 2013 10:08
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

 

ist es möglich, einem List-Element als Dokument als anhang programmatisch hinzuzufügen? Irgendwie klappt das nicht so richtig gerade :/

Weiß auch jemand, welche Größe maximal der Anhang eines List-Elementes sein darf?

 

Besten Dank.

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 27 Aug. 2013 10:26
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Su Si"]ist es möglich, einem List-Element als Dokument als anhang programmatisch hinzuzufügen?[/quote]

Klar geht das, wo genau hast Du ein Problem? SPListItem.Attachments.Add(...)

[quote user="Su Si"]Weiß auch jemand, welche Größe maximal der Anhang eines List-Elementes sein darf[/quote]

Es gilt zunächst das Limit für Dateien in Dokumentbibliotheken (Standard ist 50 MB). Wenn es größere Dateien sein sollen, reicht es aber nicht diesen Wert zu erhöhen. Man muß auch die MaxRequestLength in der web.config erhöhen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
97 Beiträge
Su Si Als Antwort am 27 Aug. 2013 12:28
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo andi,

 

ja es hat einwandfrei geklappt.

Falls jemand gerne auch wissen will wies funktioniert, hier mal n Codeausschnitt:

SPList list = webSite.Lists.TryGetList("...");
                    if (list!= null)
                    {
                   string root = @"C:\Anhang";
                    // Zugriff auf Dateien unter Pfad
                    string[] Files = System.IO.Directory.GetFiles(root);

                    //durch Dateiliste iterieren
                    foreach (SPListItem listItem in list.Items)
                    {
                        Console.WriteLine(listItem.Name);                       
                        SPAttachmentCollection AttachmentList = listItem.Attachments;
                        FileStream file = null;
                        for (int i = 0; i < Files.Length; i++)
                        {
                            string filePath = Files[i];
                            file = File.OpenRead(filePath);
                            byte[] Content = new byte[file.Length];

                            file.Read(Content, 0, (int)file.Length);                          

                            //Datei als anhang hinzufügen

                            AttachmentList.Add(file.Name, Content);
                            file.Close();
                        }
                        file.Dispose();
                        listItem.Update();
                    }