Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 16422|Svare: 0

[Kommunikasjon] .NET kjernefilleverandører

[Kopier lenke]
Publisert på 28.01.2019 15:13:10 | | |
Filleverandørabstraksjon
Filleverandører er et abstraksjonslag oppå filsystemet. Hovedgrensesnittet er IFileProvider. IFileProvider eksponerer metoder for å hente filinformasjon (IFileInfo), kataloginformasjon (IDirectoryContents) og sette endringsvarsler (ved å bruke en IChangeToken).

IFileInfo-grensesnittet gir metoder og egenskaper for å manipulere individuelle filer og kataloger. Den har to boolske egenskaper, Exists og IsDirectory, og to egenskaper for to profiler, Name og Length (per byte), og inkluderer også en LastModified-dato-egenskap. Du kan også lese filinnholdet via CreateReadStream-metoden.

Implementering av filleverandør
Det finnes tre implementasjoner av IFileProvider å velge mellom: fysisk, innebygd og sammensatt. Den fysiske typen brukes for å få tilgang til filer i selve systemet. Embedded brukes til å få tilgang til filer som er innebygd i en assembly. Den sammensatte typen er en kombinasjon av de to første metodene.

PhysicalFileProvider
PhysicalFileProvider gir tilgang til det fysiske filsystemet. Den kapsler inn System.IO.File-typen, som dekker alle stier til en mappe og dens undermapper. Denne typen omfang begrenser tilgangen til en katalog og dens underkataloger, og hindrer operasjoner utenfor omfanget i å få tilgang til filsystemet. Når du instansierer en slik leverandør, må du gi den en katalogsti som serveren kan bruke som grunnsti for alle forespørsler fra denne leverandøren (som begrenser tilgangsforespørsler utenfor stien). I en ASP.NET Core-applikasjon kan du instansiere en PhysicalFileProvider-leverandør direkte, eller du kan be om et IFileProvider-grensesnitt ved å bruke konstruktøravhengighetsinjeksjon i kontrolleren og tjenesten. Det siste resulterer i løsninger som ofte er mer fleksible og enklere å teste.

Å lage en PhysicalFileProvider er faktisk veldig enkelt, bare materialiser den og send den en fysisk vei. Du kan deretter gå gjennom innholdet gjennom katalogen eller oppgi understier for å hente informasjon om en spesifikk fil.
Endre ConfigureServices()-metoden i Startup-klassen for å registrere tjenestene som trengs for å få tilgang til lokale filer, og legg dem deretter til mellomvaren via konstruktørinjeksjon i mellomvaren, slik at du kan kontrollere tilgangsstien til filene på ett sted (altså når applikasjonen starter)






Foregående:Unike nøkkelbegrensninger for flere kolonner i Entity Framework (Unique Key consstr ...
Neste:C# generiske eksempler forklares i detalj
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com