따라서 제목은 그 자체로 말해야합니다.
ASP.NET MVC에서 재사용 가능한 구성 요소를 만들려면 3 가지 옵션이 있습니다 (내가 언급하지 않은 다른 옵션 일 수 있음).
부분보기 :
@Html.Partial(Model.Foo, "SomePartial")
맞춤 편집기 템플릿 :
@Html.EditorFor(model => model.Foo)
맞춤 디스플레이 템플릿 :
@Html.DisplayFor(model => model.Foo)
실제보기 / HTML과 관련하여 세 가지 구현은 모두 동일합니다.
@model WebApplications.Models.FooObject
<!-- Bunch of HTML -->
그래서 내 질문은-언제 / 어떻게 세 가지 중 하나를 사용할지 결정합니까?
내가 정말로 찾고있는 것은 질문을 만들기 전에 스스로에게 물어볼 질문 목록입니다. 대답은 사용할 템플릿을 결정하는 데 사용될 수 있습니다.
EditorFor / DisplayFor에서 더 나은 두 가지를 발견했습니다.
HTML 도우미를 렌더링 할 때 모델 계층을 존중합니다 (예 : "Foo"모델에 "Bar"개체가있는 경우 "Bar"의 HTML 요소는 "Foo.Bar.ElementName"을 사용하여 렌더링되며 부분은 " ElementName ").
더 강력합니다. 예를 들어
List<T>
ViewModel에 무언가가있는 경우을 사용할 수@Html.DisplayFor(model => model.CollectionOfFoo)
있으며 MVC는 컬렉션임을 확인하고 각 항목에 대해 단일 디스플레이를 렌더링 할 수 있을만큼 똑똑합니다. 고리).
또한 DisplayFor가 "읽기 전용"템플릿을 렌더링한다고 들었지만 이해할 수 없습니다. 거기에 양식을 넣을 수 없습니까?
누군가 다른 이유를 말해 줄 수 있습니까? 세 가지를 비교하는 목록 / 문서가 있습니까?