Beispiel: Dateivorgänge über die Dataverse-Web-API
Dieses Beispiel für .NET 6.0 veranschaulicht, wie Sie Vorgänge mit Dateispalten über die Dataverse-Web-API durchführen.
In diesem Beispiel wird der allgemeine Helfercode in der WebAPIService-Klassenbibliothek (C#) verwendet.
Anforderungen
- Microsoft Visual Studio 2022
- Greifen Sie mit Systemadministrator- oder Systemanpasserberechtigungen auf Dataverse zu.
Wie das Beispiel ausgeführt wird
Klonen Sie das PowerApps-Beispiele-Repository oder laden Sie es herunter.
Öffnen Sie die
PowerApps-Samples\dataverse\webapi\C#-NETx\FileOperations\FileOperations.sln
-Datei mit Visual Studio 2022.Bearbeiten Sie die
appsettings.json
-Datei, um die folgenden Eigenschaftswerte festzulegen:Eigenschaften Anweisungen Url
Die Url für Ihre Umgebung. Ersetzen Sie den https://yourorg.api.crm.dynamics.com
-Wert des Platzhalters durch den Wert für Ihre Umgebung. Informationen dazu finden Sie unter Entwicklerressourcen anzeigen.UserPrincipalName
Ersetzen Sie den you@yourorg.onmicrosoft.com
-Wert des Platzhalters durch den UPN-Wert, den Sie für den Zugriff auf die Umgebung verwenden.Password
Ersetzen Sie den yourPassword
-Wert des Platzhalters durch das von Ihnen verwendete Kennwort.Die Datei
appsettings.json
speichernLegen Sie fest, welche Projekte Sie im Projektmappen-Explorer ausführen möchten. Klicken Sie mit der rechten Maustaste auf das Projekt, und wählen Sie Als Startprojekt festlegen aus.
Drücken Sie F5, um das Beispiel auszuführen.
Beispielausgabe
Die Ausgabe des Beispiels sollte in etwa so aussehen:
Creating file column named 'sample_FileColumn' on the account table ...
Created file column named 'sample_FileColumn' in the account table.
Created account record with accountid:5fb4f993-7c55-ed11-bba3-000d3a9933c9
Uploading file Files\25mb.pdf ...
Uploaded file Files\25mb.pdf
Downloading file from accounts(5fb4f993-7c55-ed11-bba3-000d3a9933c9)/sample_filecolumn ...
Downloaded the file to E:\GitHub\PowerApps-Samples\dataverse\webapi\C#-NETx\FileOperations\FileOperationsWithActions\bin\Debug\net6.0//downloaded-25mb.pdf.
Deleted the file using FileId.
Deleted the account record.
Deleting the file column named 'sample_filecolumn' on the account table ...
Deleted the file column named 'sample_filecolumn' in the account table.
Veranschaulichung
Dieses Beispiel ist eine Lösung mit drei Projekten. Jedes Projekt führt die gleichen Vorgänge auf unterschiedliche Weise aus. Weitere Informationen zu den einzelnen Projekten finden Sie in den jeweiligen README-Dateien.
- Beispiel-README für Web-API-Dateivorgänge mit Aktionen
- Beispiel-README für Web-API-Dateivorgänge mit Blöcken
- Beispiel-README für Web-API-Dateivorgänge mit Streams
Der Code für jedes Projekt befindet sich in der jeweiligen Program.cs
-Datei.
- Beispiel-Program.cs für Web-API-Dateivorgänge mit Aktionen
- Beispiel-Program.cs für Web-API-Dateivorgänge mit Blöcken
- Beispiel-Program.cs für Web-API-Dateivorgänge mit Streams
Jedes Projekt verwendet eine gemeinsam genutzte Utility
-Klasse zum Ausführen allgemeiner Vorgänge. Diese Klasse ist in der Datei Utility.cs enthalten.
Allgemein führt jedes Projekte diese Vorgänge aus:
Eine Datei erstellen
Mit der Funktion Utility.CreateFileColumn
wird eine Dateispalte mit dem Namen sample_FileColumn
in der Kontotabelle mit einem MaxSizeInKb
-Wert von 10 MB erstellt.
Eine Dateispalte aktualisieren
Mit der Funktion Utility.UpdateFileColumnMaxSizeInKB
wird der MaxSizeInKb
-Wert der Datei sample_FileColumn
auf 100 MB aktualisiert.
Tipp : Wenn Sie einige Fehlerszenarien erstellen möchten, da die Dateispaltengröße zu klein ist, kommentieren Sie diese Zeile aus.
Den MaxSizeInKb-Wert der Dateispalte abrufen
Mit Utility.GetFileColumnMaxSizeInKb
wird der MaxSizeInKb
-Wert der sample_FileColumn
-Dateispalte abgerufen und in einer Variablen mit dem Namen fileColumnMaxSizeInKb
gespeichert.
Firmendatensatz erstellen
Bevor eine Datei in die Dateispalte hochgeladen werden kann, muss ein Datensatz vorhanden sein.
Hochladen einer Datei
Die Funktion zum Hochladen der Datei akzeptiert einen Parameter mit dem Namen fileColumnMaxSizeInKb
und verwendet diesen Wert, um die Größe der Datei zu testen. Wenn die Datei größer als der konfigurierte Grenzwert für die Dateispalte ist, wird ein Fehler ausgegeben.
Datei herunterladen
Wenn der Dateiupload erfolgreich war, speichert die Funktion zum Herunterladen der Datei sie im aktuellen Verzeichnis. Sie können versuchen, die Datei zu öffnen, um zu bestätigen, dass sie korrekt hoch- und heruntergeladen wurde.
Die Datei löschen
Wenn der Dateiupload erfolgreich war, wird die Datei gelöscht.
Bereinigung
Um das System im Zustand vor der Ausführung des Beispiels zu belassen, bevor die Probe ausgeführt wurde, werden folgende Schritte ausgeführt:
- Firmendatensatz löschen
- Dateispalten löschen
Siehe auch
Dateispaltendaten verwenden
Beispiel: Dateivorgänge über das Dataverse-SDK für .NET
Bildspaltendaten verwenden
Beispiel: Bildvorgänge über die Dataverse-API