Εγκατάσταση
Προσθέστε το Doconut στο .NET Standard 2.1 έργο σας
Ο βασικός προβολέας Doconut για .NET Standard διανέμεται ως ένα πακέτο NuGet που ενσωματώνεται σε οποιαδήποτε εφαρμογή ASP.NET Core. Τα προαιρετικά πρόσθετα χρησιμοποιούν ξεχωριστά πακέτα. Αυτή η σελίδα εγκαθιστά το βασικό πακέτο, επιβεβαιώνει ότι ο κεντρικός υπολογιστής σας μπορεί να το χρησιμοποιήσει και καταχωρίζει το middleware — το ελάχιστο που απαιτείται πριν από την πρώτη σας απόδοση.
Ελέγξτε πρώτα το πλαίσιο του κεντρικού υπολογιστή
Η βιβλιοθήκη στοχεύει στο netstandard2.1. Αυτό είναι ένα πιο στενό συμβόλαιο από την προηγούμενη έκδοση netstandard2.0, και είναι το πρώτο πράγμα που πρέπει να επαληθευτεί:
| Περιβάλλον | Υποστηρίζεται |
|---|---|
| .NET Core 3.0 ή νεότερο, συμπεριλαμβανομένων των .NET 5/6/7/8 | Ναι |
| .NET Framework (οποιαδήποτε έκδοση) | Όχι — το netstandard2.1 δεν μπορεί να καταναλωθεί από το .NET Framework |
Αν η εφαρμογή εκτελείται σε .NET Framework, αυτό δεν είναι το σωστό πακέτο. Χρησιμοποιήστε το Doconut.NETFramework αντ' αυτού· από την έκδοση 26.9.0 απαιτεί .NET Framework 4.7.2. Οι εφαρμογές αναφοράς που διανέμονται με αυτή την έκδοση στοχεύουν το net8.0.
Εγκατάσταση του πακέτου
dotnet add package Doconut.NETStandardΗ εντολή χωρίς έκδοση εγκαθιστά την πιο πρόσφατη σταθερή έκδοση. Για να αναπαράγετε ακριβώς την τρέχουσα έκδοση 26.8.0, περάστε την έκδοση ως ξεχωριστή επιλογή:
dotnet add package Doconut.NETStandard --version 26.8.0Doconut.NETStandard είναι το αναγνωριστικό του πακέτου. Το επίθημα .26.8.0 ανήκει στο ληφθέν όνομα αρχείου Doconut.NETStandard.26.8.0.nupkg και δεν αποτελεί μέρος του αναγνωριστικού.
Ο αριθμός έκδοσης είναι η γενιά
Αυτό έχει μεγαλύτερη σημασία εδώ από το όνομα του πακέτου. Και οι δύο γενιές της βιβλιοθήκης .NET Standard δημοσιεύονται κάτω από το ίδιο αναγνωριστικό πακέτου, και μόνο η έκδοση τις διακρίνει:
| Έκδοση | Στόχος | API |
|---|---|---|
| 26.7.0 και κάτω | netstandard2.0 | η προηγούμενη ενσωμάτωση |
| 26.8.0 και πάνω | netstandard2.1 | η ενσωμάτωση που τεκμηριώνεται εδώ |
Δεν υπάρχει shim συμβατότητας και δεν υπάρχει πακέτο παράλληλης εγκατάστασης. Η αύξηση της έκδοσης είναι η αναβάθμιση, και ο μεταγλωττιστής θα αναφέρει άμεσα τις διαφορές στο API.
Μην επιλέγετε τεκμηρίωση μόνο από το όνομα του πακέτου:
new Viewer(_cache, _accessor, …),UnSafeMode, synchronousOpenDocument(...),viewer.InitCache(),UseDoconutWebFarm, και χειροκίνητα αντιγραμμένα scripts προβολέα που ταυτοποιούν την προηγούμενη ενσωμάτωση;AddDoconut(),UseDoconutResources(), ένας ενσωματωμένοςViewer, καιOpenDocumentAsync(...)που ταυτοποιούν την τρέχουσα ενσωμάτωση που τεκμηριώνεται εδώ.
Το μεταφρασμένο προηγούμενο εγχειρίδιο εγκατάστασης παραμένει διαθέσιμο. Χρησιμοποιήστε τον οδηγό μετάβασης για να αλλάξετε γενιές· μια ενημέρωση πακέτου δεν μετατρέπει αυτόματα την εκκίνηση, τη διάρκεια ζωής του viewer ή τους πόρους του προγράμματος περιήγησης.
Καταχώριση του Doconut
AddDoconut() είναι το μοναδικό σημείο εισόδου καταχώρισης — υπάρχει μία μόνο υπερφόρτωση, και συνδέει την υπηρεσία Viewer, την υπηρεσία άδειας και την υποδομή απόδοσης στο DI container.
Δύο κλήσεις middleware ολοκληρώνουν τη ρύθμιση, και η σειρά τους έχει σημασία: UseDoconutResources() πρέπει να εκτελεστεί πριν από UseDoconut(). UseDoconut() είναι τελικό middleware, έτσι η κλήση του πρώτα σημαίνει ότι κάθε αίτημα σε έναν πόρο /doconut-res δεν φτάνει ποτέ στον διαχειριστή πόρων και επιστρέφει 404. Η σύνδεση της συνεδρίας απαιτείται επίσης — η προεπιλεγμένη ασφάλεια εγγράφων του Doconut επικυρώνει κάθε αίτημα σελίδας έναντι της κατάστασης συνεδρίας ASP.NET.
builder.Services.AddDoconut(options =>
{
options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddDistributedMemoryCache(); // η κατάσταση συνεδρίας χρειάζεται μια κρυφή μνήμη (MVC/Razor Pages ήδη προσθέτουν μία)
builder.Services.AddSession(); // Η ασφάλεια εγγράφων Doconut βασίζεται στην κατάσταση συνεδρίας ASP.NET
app.UseSession(); // καλέστε το UseSession() πριν από το UseDoconut()
app.UseDoconutResources(); // πρέπει να καταχωρηθεί πριν από το UseDoconut()
app.UseDoconut();Ονοματοχώροι
Οι τύποι διαμόρφωσης δεν διασπείρονται πλέον σε τέσσερις ονοματοχώρους. Σε αυτή την έκδοση σχεδόν όλα βρίσκονται στον ριζικό ονοματοχώρο Doconut:
using Doconut; // Viewer, DoconutOptions, DocOptions, όλες οι ρυθμίσεις μορφής
using Doconut.Middleware; // AddDoconut, UseDoconut, UseDoconutResources
using Doconut.Clouds; // ρυθμίσεις cloud και file-share
using Doconut.Configs.Conversion; // ConversionTargetΤα ονόματα των τύπων δεν άλλαξαν — PdfConfig, WordConfig, ExcelConfig,
CssConfig, ScriptConfig και τα υπόλοιπα είναι ακόμα εκεί. Αν μεταφέρετε μια υπάρχουσα εφαρμογή, τα περισσότερα αρχεία χρειάζονται μόνο δύο διαγραμμένες γραμμές using· δείτε τον οδηγό μετάβασης.
Όλες οι επιλογές
DoconutOptions δέχεται τις παρακάτω ρυθμιζόμενες ιδιότητες. Κάθε μία είναι προαιρετική — τα προεπιλεγμένα παρακάτω ισχύουν όταν μια ιδιότητα παραμείνει ακαθορισμένη.
| Ιδιότητα | Προεπιλογή | Περιγραφή |
|---|---|---|
ShowDoconutInfo | false | Όταν true, ένα αίτημα χωρίς token επιστρέφει μια λωρίδα έκδοσης αντί για 404. Χρήσιμο ως γρήγορος έλεγχος· αφαιρέστε το σε παραγωγή. |
UnsafeMode | false | Όταν true, παραλείπει τον έλεγχο ασφαλείας ASP.NET-session στα αιτήματα σελίδας. Αφαιρέστε το σε παραγωγή. Σημειώστε την ορθογραφία — η προηγούμενη βιβλιοθήκη το ονόμαζε UnSafeMode. |
MiddlewarePath | "/doconut" | Τιμή συντονισμού για το endpoint page-image. Επικυρώνεται, αλλά δεν δημιουργεί κλάδο από μόνη της· διατηρήστε τη συγχρονισμένη με την πραγματική αντιστοίχιση UseDoconut() και τον πελάτη BasePath. |
ResourcesPath | "/doconut-res" | Από πού σερβίρονται οι ενσωματωμένοι πόροι JS/CSS/εικόνας. |
LicensePath | "" (empty string) | Διαδρομή προς το αρχείο άδειας. Κενό σημαίνει μετάβαση στην επόμενη πηγή, έπειτα αυτόματη αναζήτηση. |
LicenseContent | "" (empty string) | Ακατέργαστο περιεχόμενο άδειας — από μεταβλητή περιβάλλοντος, διαχειριστή μυστικών ή βάση δεδομένων. |
LicenseStream | null | Άδεια ως ροή, διαβάζεται μία φορά κατά την εκκίνηση. |
ResetLicense | false | Κρατημένη σημαία συμβατότητας. Η άδεια διαβάζεται κατά τη διάρκεια του AddDoconut()· επανεκκινήστε την εφαρμογή μετά την αντικατάσταση μιας άδειας. |
Προτεραιότητα άδειας όταν ορίζονται περισσότερες από μία πηγές: LicenseStream υπερισχύει του LicenseContent, υπερισχύει του LicensePath, υπερισχύει της αυτόματης αναζήτησης — δείτε το Ρύθμιση Άδειας.
builder.Services.AddDoconut(options =>
{
options.LicensePath = "Doconut.Viewer.lic";
options.MiddlewarePath = "/doconut"; // συντονίστε με την αντιστοίχιση της εφαρμογής και το BasePath του πελάτη
options.ResourcesPath = "/doconut-res"; // από πού σερβίρονται τα JS/CSS/εικόνες του viewer
options.UnsafeMode = false; // διατηρήστε την ασφάλεια της συνεδρίας ενεργή
options.ShowDoconutInfo = false;
});Επόμενα βήματα
- Γρήγορη Εκκίνηση — ανοίξτε το πρώτο σας έγγραφο και αποδώστε το στο πρόγραμμα περιήγησης.
- Ρύθμιση Άδειας — όπου το Doconut αναζητά το αρχείο άδειας σας.
Ήταν αυτή η σελίδα χρήσιμη;