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

보기: 15312|회답: 2

[.NET 코어] ASP.NET Core – Razor View Import Usage Description

[링크 복사]
게시됨 2019. 5. 6. 오전 10:43:29 | | | |
이 글에서는 Razor View Import를 소개하겠습니다. ViewStart 파일 외에도, MVC 프레임워크가 뷰를 렌더링할 때 찾는 ViewImports 파일도 있습니다.

ViewStart 파일과 마찬가지로 ViewImports.cshtml을 폴더에 드래그 앤 드롭할 수 있으며, ViewImports 파일은 폴더 계층 구조 내 모든 뷰에 영향을 줄 수 있습니다



이 뷰는 이번 MVC 버전에서 새롭게 도입된 뷰로, 이전 MVC 버전에서는 XML 구성 파일을 사용해 Razor 뷰 엔진의 특정 측면을 구성할 수 있었습니다.

그 XML 파일들은 이제 사라졌고, 대신 코드를 사용합니다.

ViewImports 파일은 코드를 작성하고 뷰에 필요한 네임스페이스를 가져오는 일반적인 명령어를 넣을 수 있는 곳입니다.

만약 있다면, 보통 뷰의 네임스페이스를 사용하며, 각 뷰나 타입에서 전체 네임스페이스를 사용하지 않고 ViewImports 파일의 지시문을 사용할 수 있습니다.

예시

간단한 예를 들어 using 지시를 ViewImports로 옮기는 방법을 살펴보겠습니다. 인덱스 뷰에서는 아래 프로그램에서 볼 수 있는 것처럼 FirstAppDemo.Controllers라는 네임스페이스를 불러오는 using 명령어가 있습니다.

지시문을 사용하면 Razor 뷰에서 생성된 코드가 올바르게 컴파일될 수 있습니다. 명령어를 사용하지 않으면 C# 컴파일러는 이 Employee 유형을 찾을 수 없습니다. 직원 유형을 보기 위해 Index.cshtml 파일에서 using 지시를 제거해 보겠습니다.

이제 앱을 실행하세요.



HomePageViewModel 타입 또는 네임스페이스를 찾을 수 없다는 오류가 표시됩니다. 아마도 여러 뷰가 같은 사용 지침을 요구하기 때문일 것입니다. 그래서 각 뷰에 넣는 대신 Views 폴더에 View 가져오기를 만들어 봅시다. 이 경우 각 뷰에 using 문장이 추가되며, Views 폴더를 우클릭한 후 Add→New Item을 선택하세요.



가운데 창에서 MVC 가져오기 보기(View Imports) 페이지를 선택하세요. 기본적으로 이름은 _ViewImports.cshtml입니다. ViewStart와 마찬가지로 이 파일로 HTML을 렌더링할 수 없으니, 추가(Add Button)를 눌러봅시다.



이제 아래 설명대로 using 지시어를 _ViewImports.cshtml 파일에 추가합니다.


이제 이 폴더나 하위 폴더에 표시되는 모든 뷰는 FirstAppDemo.Controllers의 타입을 사용할 수 있으며, 정확한 사용법을 명시하지 않습니다. 앱을 다시 실행해 보시면 해당 뷰가 실행되고 있는 것을 볼 수 있습니다.





이전의:ASP.NET 코어에서 맞춤형 라우팅 제약 조건 구현
다음:마스터가 있나요?
 집주인| 게시됨 2019. 5. 6. 오전 10:44:24 |
Views 폴더에는 실행 시 자동으로 각 뷰에 가져오는 _ViewStart.cshtml이 있습니다.

다른 뷰의 _ViewImports.cshtml 파일에서 사용하는 참조, 의존성 주입 등을 사용해 일반적인 기능들을 구성할 수 있습니다.
게시됨 2019. 5. 6. 오전 10:52:47 |
.NET 코어 기반
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com