Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 16422|Odpověď: 0

[Komunikace] Poskytovatelé souborů .NET Core

[Kopírovat odkaz]
Zveřejněno 28.01.2019 15:13:10 | | |
Abstrakce poskytovatele souborů
Poskytovatelé souborů jsou vrstvou abstrakce nad souborovým systémem. Jeho hlavním rozhraním je IFileProvider. IFileProvider zpřístupňuje metody získávání informací o souborech (IFileInfo), adresářových informací (IDirectoryContents) a nastavení oznámení o změnách (pomocí IChangeTokenu).

Rozhraní IFileInfo poskytuje metody a vlastnosti pro manipulaci s jednotlivými soubory a adresáři. Má dvě booleovské vlastnosti, Exists a IsDirectory, a dvě vlastnosti pro dva profily, Name a Length (per byte), a také obsahuje vlastnost LastModified date. Obsah souboru můžete také číst metodou CreateReadStream.

Implementace File Provider
Existují tři implementace IFileProvideru, ze kterých lze vybírat: fyzická, embeddovaná a kompozitní. Fyzický typ se používá k přístupu k souborům v samotném systému. Embedded se používá k přístupu k souborům vloženým v assembleru. Složený typ je kombinací prvních dvou metod.

PhysicalFileProvider
PhysicalFileProvider poskytuje přístup k fyzickému souborovému systému. Zahrnuje typ System.IO.File, který zahrnuje všechny cesty k adresáři a jeho podadresářům. Tento typ rozsahu omezuje přístup k adresáři a jeho podadresářům, čímž zabraňuje operacím mimo rozsah přístupu k souborovému systému. Při instanci takového poskytovatele musíte poskytnout adresářovou cestu, kterou server může použít jako základní cestu pro všechny požadavky tohoto poskytovatele (což omezuje přístupové požadavky mimo cestu). V aplikaci ASP.NET Core můžete přímo instancovat poskytovatele PhysicalFileProvider, nebo si můžete vyžádat rozhraní IFileProvider pomocí injekce závislostí konstruktoru v řadiči a službě. To vede k řešením, která jsou často flexibilnější a snadněji testovatelná.

Vytvoření PhysicalFileProvideru je vlastně velmi jednoduché, stačí ho materializovat a předat mu fyzickou cestu. Pak můžete obsah procházet jeho adresářem nebo zadat podcesty, abyste získali informace o konkrétním souboru.
Upravte metodu ConfigureServices() třídy Startup tak, aby registrovala služby potřebné k přístupu k lokálním souborům, a pak je přidejte do middleware pomocí injekce konstruktorů v middleware, abyste mohli ovládat přístupovou cestu souborů na jednom místě (tj. při spuštění aplikace)






Předchozí:Unikátní klíčová omezení pro více sloupců v Entity Framework (unikátní klíč konštruuje ...
Další:Obecné příklady v C# jsou podrobně vysvětleny
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com