Vorbedingungen
Was die Hostanwendung einmal einrichten muss, bevor das erste Beispiel läuft. Fehlt davon etwas, erscheint meist keine Fehlermeldung.
Das Paket selbst braucht keine Registrierung. Beide EditorTemplates reden aber mit Endpunkten, die
die Anwendung bereitstellt, und lesen ihre Einstellungen über [AdditionalMetadata]. Fehlt davon
etwas, erscheint die Ablagefläche, aber der Upload schlägt fehl oder die Einstellungen fallen still
auf ihre Standardwerte zurück.
Setzt die Grundeinrichtung aus Basis › Vorbedingungen voraus.
Für DokumentListe und IFormFile
| Was | Wo | Fehlt es |
|---|---|---|
Paket FMH.Komponente.FileUpload |
.csproj |
Tabelle, PDFViewer, Basis und FileUpload.Validierung kommen transitiv mit |
| Grundeinrichtung aus Basis › Vorbedingungen | Program.cs, _Layout.cshtml |
fehlen Dropzone und das Skript der Ablagefläche samt Stilen. Ohne AddFmhWidgetOptions() wirken die [AdditionalMetadata]-Angaben nicht: Upload-Adresse, Download-Namen, Umbenennen, Sammel-Löschen und die Grenzen fallen auf die Standardwerte zurück |
| Ein Upload-Endpunkt der Anwendung | eigener Controller | schlägt jeder Upload fehl. Er nimmt per POST die Datei entgegen und antwortet mit Json, das eine Eigenschaft id enthält. Fehlt die id, schreibt das Skript eine Warnung ins Log und lädt die Seite neu |
| Serverseitige Prüfung von Grösse, Anzahl und Endung im Endpunkt | eigener Controller | ist der Endpunkt von aussen ohne Grenzen erreichbar. Die Angaben am Feld prüft nur der Browser |
Adresse, Aufbau der Anfrage und die übrigen Angaben am Feld stehen in der Anleitung von DokumentListe und IFormFile.
Zusätzlich für DokumentListe
- Ein Download-Endpunkt in derselben Area wie die Seite. Das Template baut den Link je Zeile
aus Action und Controller (Standard
downloadunddokument) plus dem Routenwertid, ohne Area-Angabe. Liegt der Endpunkt anderswo, läuft der Link ins Leere. Für andere Routen gibt es das Beispiel «Download-Url zur Laufzeit». - Für die Vorschau im Dialog
@Html.Fmh(Fmh.DialogDokumentViewer())aus dem PDFViewer, einmal je Seite und ausserhalb des Formulars, am besten im Layout. Die Links der Liste tragendata-siwf-documentviewer-type; mit dem Dialog öffnen sie die Vorschau, ohne ihn laden sie das Dokument herunter. Einzelheiten unter PDFViewer › Vorbedingungen. - Umbenennen und Löschen in der Formular-Action. Dafür gibt es keine eigenen Endpunkte: Das
Template sammelt die Änderungen in
DokumenteUmbenennenundDokumentLoeschenIds, und die POST-Action des Formulars muss sie ausführen. Sonst gehen sie beim Absenden verloren. Das Beispiel «Dokumente bearbeiten» zeigt die Action.
Zusätzlich für grosse Dateien
KestrelServerOptions.Limits.MaxRequestBodySizebegrenzt, was ankommt. Das Template kappt die Grössenangabe am Feld auf diesen Wert minus 2 MB. Wer grössere Dateien zulassen will, hebt zuerst die Grenze des Servers an.