Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 16422|Risposta: 0

[Comunicazione] Provider File Core .NET

[Copiato link]
Pubblicato su 28/01/2019 15:13:10 | | |
Astrazione del provider di file
I provider di file sono uno strato di astrazione sopra il file system. La sua interfaccia principale è IFileProvider. IFileProvider espone metodi per ottenere informazioni sui file (IFileInfo), informazioni sulla directory (IDirectoryContents) e impostare le notifiche di modifica (utilizzando un IChangeToken).

L'interfaccia IFileInfo fornisce metodi e proprietà per manipolare singoli file e directory. Ha due proprietà booleane, Exists e IsDirectory, e due proprietà per due profili, Name e Length (per byte), e include anche una proprietà LastModified date. Puoi anche leggere il contenuto del file tramite il metodo CreateReadStream.

Implementazione del provider di file
Ci sono tre implementazioni di IFileProvider tra cui scegliere: fisica, embeddeded e composite. Il tipo fisico viene utilizzato per accedere ai file nel sistema vero e proprio. Embedded viene utilizzato per accedere ai file incorporati in un assembly. Il tipo composto è una combinazione dei primi due metodi.

PhysicalFileProvider
PhysicalFileProvider fornisce accesso al file system fisico. Racchiude il tipo di file System.IO., che espia tutti i percorsi verso una directory e le sue sottodirectory. Questo tipo di ambito limita l'accesso a una directory e alle sue sottodirectory, impedendo che operazioni al di fuori dell'ambito accedano al file system. Quando si istanzia un tale provider, è necessario fornirgli un percorso di directory che il server possa utilizzare come percorso base per tutte le richieste effettuate da questo provider (il che limita le richieste di accesso al di fuori del percorso). In un'applicazione ASP.NET Core, puoi istanziare direttamente un provider PhysicalFileProvider, oppure puoi richiedere un'interfaccia IFileProvider utilizzando l'iniezione di dipendenza del costruttore nel controller e nel servizio. Quest'ultimo risultato risulta in soluzioni spesso più flessibili e facili da testare.

Creare un PhysicalFileProvider è in realtà molto semplice: basta materializzarlo e passargli un percorso fisico. Puoi quindi attraversare il contenuto attraverso la sua directory o fornire sottopercorsi per ottenere informazioni su un file specifico.
Modifica il metodo ConfigureServices() della classe Startup per registrare i servizi necessari ad accedere ai file locali, e poi aggiungili al middleware tramite iniezione di costruttori nel middleware, così da poter controllare il percorso di accesso dei file in un unico punto (cioè quando l'applicazione si avvia)






Precedente:Vincoli di chiavi uniche per più colonne nel Framework di Entità (Costituzione di chiavi uniche ...
Prossimo:Gli esempi generici in C# sono spiegati in dettaglio
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com