다음 문제로 어려움을 겪고 있으며이를 해결할 수있는 적절한 방법을 찾을 수 없습니다.면도기에 HTML 덧글 추가
내 도전 과제 : 면도기 뷰에서 실제 속성 값 바로 앞에 HTML 주석을 씁니다.
이 내 (simplyfied) 뷰 모델입니다 :
<h2>@Model.Title</h2>
지금 난 그냥 HTML 주석을 작성하려면 :
public class Article
{
public string Title {get;set;}
}
은 단순히 내 면도기보기에서이 작업을 수행이 제목을 작성하는 방법 실제 제목 앞에 있기 때문에 생성 된 HTML은 다음과 같습니다 (간단히) :
<h2><!-- some parameters for a 3th party system --> This is my title</h2>
HTML 주석이옵니다. 'Title'속성에 적용된 속성으로부터. 값이 생성되므로 .NET Framework의 TypeDescriptor를 사용하여 런타임에 attribute-value가 추가됩니다.
이제는 HTML 도우미를 사용하여 모든 속성을 간단히 작성하여이 작업을 수행 할 수 있음을 알고 있습니다. 이와 같이 : @ MyHelper.Write (m => m.Title)
그러나 잠재적으로 모든 내 속성이 HTML 주석을 필요로하므로보기를 혼란시키고 HTML 도우미를 사용하지 않으므로 HTML 도우미를 사용하지 않으려합니다. 보기가보기 좋고 (더) 읽을 수 있습니다.
이 내가 시도 것입니다 :
- (
WebViewPage<TModel>
에서 상속) 사용자 정의 면도기 기본 페이지를 만들었습니다. 덮어 쓰기는 '쓰기'방법입니다.
이런 종류의 작품이 있지만 가장 큰 문제는 내가 어떤 속성이 그 순간에 작성되었는지 알 수 없다는 것입니다. 'Write'메소드에서 현재 속성 이름을 가져올 방법이 없습니다. 이제 동적으로 모델을 검색하여 작성된 값으로 속성을 찾고 속성에서 HTML 주석을 앞에 둡니다.
내 질문 : 내가 원하는 것을 달성하기위한 또 다른 접근 방법이 있습니까? 전에 sais로 : 나는 HTML 도우미를 사용하여 내 모든 속성을 쓰지 않으려합니다. (루프 등을 생각하면 좋지 않습니다.) 그것은 실제 값의 일부가 아니다
- :
또한, 내 컨트롤러에서이 HTML 주석을 추가하면 이후에는 옵션이 없습니다. 일종의 메타 데이터입니다.
- 은 HTML 주석 은
- web.config 설정에 따라 HTML 주석을 추가해야합니다. 예 또는 아니오 (실제 HTML 주석은 속성 값마다 다릅니다)
int
년대, 두 배의 및
DateTime
년대에 추가해야합니다. 문자열을 포함하도록 double 속성을 조정할 방법이 없습니다. (이미지는
List<DateTime>
이고 모든 날짜에는 HTML 주석이 필요합니다.)
이 질문은 다소 길다는 것을 알고 있습니다. 그 죄송합니다. 어떤 생각이라도 감사합니다.
'_layout' 공유보기에 넣을 수없는 이유는 무엇입니까? – Oded
'this'로 무엇을 의미하는지 확실하지 않습니다 ... – RainyDays
의견이있는 제목. – Oded