Für den Umgang mit Dateien gibt es Hilfsmethoden in Api.Attachments
.
Dateien auf einem Datensatz
Um auf einen Datensatz Methoden für den Umgang mit Dateien zur Verfügung zu haben, muss die Erweiterung über ein using
eingebunden werden.
using BA.Core.Extensions.BA.Core.DB;
Hinzufügen
byte[] data = new byte[];
OrmAttachment attachment = Api.Attachments.CreateAttachment("Dateinname.txt", data, nameof(MyDataTable.MyAttachments), session: orm.Session);
orm.AddAttachment(attachment, false);
orm.Save();
Abfragen
Einzelne Datei
OrmAttachment attachment = orm.GetAttachmentById(attachmentGuid);
Alle Dateien eines Feldes
IReadOnlyList<OrmAttachment> attachments = orm.DefaultAttachments;
Alle Dateien
IEnumerable<OrmAttachment> attachments = orm.GetAttachments();
Eingebette Bilder in HTML Feldern werden ebenfalls als Dateien abgelegt und werden daher ebenfalls nur einmalig in den Speicher abgelegt. Um diese zu Laden muss man den Parameter inline
setzen.
IEnumerable<OrmAttachment> attachments = orm.GetAttachments(inline: AttachmentInlineType.Inline);
Entfernen
orm.RemoveAttachment(attachment);