이것은 다소 이상합니다. 나는 쉬운 수정 방법이 있다고 확신합니다."Loop over children"하지만 "IntelliSense"가 사라졌습니다
저는 ModelsBuilder를 Dll로 설정하고 @Model.Content.PROPERTY
과 같은 작업을 수행하여 제 백 오피스에 쓴 속성을 얻을 수 있습니다. 이것은 잘 작동하지만, 모든 아이들을 반복하여 그 표기법을 사용하고 싶다면 어떻게해야할까요? 다음은 예입니다 :
내 문서 유형 구조는 다음과 같이 진행됩니다
-Projects
-Project
을 그리고 이것은 내가하고 싶은 것입니다 다음 project
@foreach(var project in Model.Content.Children) {
<p>@project.Content.PROPERTY</p>
}
내가 그런 일을하고 싶어하지만, 유형이 IPublishedContent
으로 설정됩니다. 기본적으로 모델 속성에 직접 액세스 할 수 있도록 IPublishedContent<Project>
이 필요합니다. 이 방법에 의해 잘 작동 :
@foreach(var project in Model.Content.Children) {
<p>@project.GetPropertyValue("description")</p>
}
및 description
내 Project
모델의 속성입니다.
제네릭 버전의 Children <>()을 사용하여 특정 유형의 하위 항목 만 필터링하고 필터 할 수 있습니다. 상위 노드가 여러 유형의 하위 문서를 허용하는 경우 편리합니다. 그리고 이미 추가 된 보너스는 타입 캐스팅으로 반환됩니다. –