Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 16422|Відповідь: 0

[Зв'язок] Провайдери файлів .NET Core

[Копіювати посилання]
Опубліковано 28.01.2019 15:13:10 | | |
Абстракція провайдера файлів
Провайдери файлів — це шар абстракції поверх файлової системи. Його основний інтерфейс — IFileProvider. IFileProvider надає методи отримання інформації про файл (IFileInfo), інформації про каталог (IDirectoryContents) та встановлення сповіщень про зміни (за допомогою IChangeToken).

Інтерфейс IFileInfo надає методи та властивості для маніпулювання окремими файлами та каталогами. Він має дві булеві властивості — Exists і IsDirectory, а також дві властивості для двох профілів — Name і Length (на байт), а також включає властивість дати LastModified. Ви також можете прочитати вміст файлу за допомогою методу CreateReadStream.

Реалізація File Provider
Існує три реалізації IFileProvider на вибір: фізичну, вбудовану та композитну. Фізичний тип використовується для доступу до файлів у реальній системі. Вбудований режим використовується для доступу до файлів, вбудованих у асемблер. Складний тип є комбінацією перших двох методів.

PhysicalFileProvider
PhysicalFileProvider надає доступ до фізичної файлової системи. Він інкапсулює тип файлу System.IO.File, який обмежує всі шляхи до каталогу та його підкаталогів. Такий тип області обмежує доступ до каталогу та його підкаталогів, запобігаючи операціям поза межами сфери доступу до файлової системи. Під час створення такого провайдера потрібно надати йому шлях до каталогу, який сервер може використовувати як базовий для всіх запитів, зроблених цим провайдером (що обмежує запити на доступ поза межами шляху). У ASP.NET Core застосунку ви можете безпосередньо інстанцювати провайдера PhysicalFileProvider або запитати інтерфейс IFileProvider, використовуючи ін'єкцію залежностей конструктора в контролері та сервісі. Останнє призводить до рішень, які часто є більш гнучкими та легшими для тестування.

Створення PhysicalFileProvider насправді дуже просте — просто втілити його і передати фізичний шлях. Потім ви можете проходити контент через його каталог або надавати підшляхи, щоб отримати інформацію про конкретний файл.
Модифікуйте метод ConfigureServices() класу Startup, щоб зареєструвати сервіси, необхідні для доступу до локальних файлів, а потім додайте їх до проміжного програмного забезпечення через ін'єкцію конструктора в проміжне програмне забезпечення, щоб контролювати шлях доступу до файлів в одному місці (тобто коли запуск застосунку)






Попередній:Унікальні ключові обмеження для кількох стовпців у Entity Framework (Унікальний ключ constr ...
Наступний:Приклади C# generic детально пояснюються
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com