이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 16422|회답: 0

[통신] .NET 코어 파일 제공자

[링크 복사]
게시됨 2019. 1. 28. 오후 3:13:10 | | |
파일 제공자 추상화
파일 제공자는 파일 시스템 위에 올라가는 추상화 계층입니다. 주요 인터페이스는 IFileProvider입니다. IFileProvider는 파일 정보(IFileInfo), 디렉터리 정보(IDirectoryContents), 변경 알림 설정(IChangeToken을 사용해)을 얻는 방법을 노출합니다.

IFileInfo 인터페이스는 개별 파일과 디렉터리를 조작하는 방법과 속성을 제공합니다. 이 소프트웨어는 Exists와 IsDirectory 두 개의 불리언 속성, 그리고 두 프로필에 대한 Name과 Length(바이트당 단위)라는 두 가지 속성을 가지고 있으며, LastModified 날짜 속성도 포함되어 있습니다. CreateReadStream 메서드를 통해 파일 내용을 읽을 수도 있습니다.

파일 제공자 구현
IFileProvider는 물리형, 임베디드형, 복합형의 세 가지 구현 형태 중에서 선택할 수 있습니다. 물리적 타입은 실제 시스템 내 파일에 접근하는 데 사용됩니다. 임베디드는 어셈블리에 내장된 파일에 접근하는 데 사용됩니다. 복합 유형은 첫 두 가지 방법의 조합입니다.

PhysicalFileProvider
PhysicalFileProvider는 물리적 파일 시스템에 대한 접근을 제공합니다. System.IO.File 타입을 캡슐화하며, 디렉터리와 그 하위 디렉터리의 모든 경로를 범위로 확장합니다. 이 유형의 범위는 디렉터리와 그 하위 디렉터리에 대한 접근을 제한하여 범위 외의 작업이 파일 시스템에 접근하는 것을 방지합니다. 이러한 제공자를 인스턴스화할 때, 서버가 이 제공자가 보내는 모든 요청의 기본 경로로 사용할 수 있는 디렉터리 경로를 제공해야 합니다(경로 외부의 접근 요청을 제한합니다). ASP.NET Core 애플리케이션에서는 PhysicalFileProvider 제공자를 직접 인스턴스화할 수 있고, 컨트롤러와 서비스에서 constructor dependency injection을 사용하여 IFileProvider 인터페이스를 요청할 수 있습니다. 후자는 종종 더 유연하고 테스트하기 쉬운 해결책을 만듭니다.

PhysicalFileProvider를 만드는 것은 사실 매우 간단합니다. 그냥 구체화하고 물리 경로를 전달하면 됩니다. 그 후 해당 디렉터리를 통해 콘텐츠를 탐색하거나 특정 파일에 대한 정보를 얻기 위한 서브패스를 제공할 수 있습니다.
Startup 클래스의 ConfigureServices() 메서드를 수정하여 로컬 파일에 접근하는 데 필요한 서비스를 등록하고, 미들웨어 내 생성자 인젝션을 통해 미들웨어에 추가하여 파일 접근 경로를 한 곳(즉, 애플리케이션이 시작할 때)에서 제어할 수 있게 하세요






이전의:엔터티 프레임워크 내 여러 열에 대한 고유 키 제약 조건 (고유 키 구성 ...
다음:C# 일반 예제를 자세히 설명합니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com