2013-11-01 2 views
1

아래와 같은 다른 메서드가있는 mvc 메서드에서는 어떻게 만들 수 있습니까?사용자 지정 MVC 확장 메서드

@Html.TextBox(m => m.Password).Class("test").Placeholder("Password"); 
+1

정확히 그렇게 할 수는 없습니다. @ Html.TextBox는 MvcHtmlString을 반환하므로이 구문을 사용하려면 메서드 MvcHtmlString의 클래스 및 자리 표시 자 확장 메서드를 만들어야합니다. 그들은 Html을 파싱해야하기 때문에 까다롭고 비효율적입니다. –

+0

[email protected]()가있을 수 있습니까? TextBox (x => x.password.) 클래스 (""). 자리 표시 자()? – famadori

+0

예 :이 방법으로 작업을 제어합니다. – famadori

답변

0

나는 접근 방식을 HtmlTags으로 생각하고 있습니다. 특히 MvcHtmlString을 반환하지 않는 사용자 지정 HTML 도우미 메서드를 구현하고 IHtmlString을 구현하고 메서드를 연결하는 데 필요한 API를 제공하고 장면 뒤에서 개체 모델을 작성하는 개체를 구현합니다. Razor는 렌더링 할 시간이되면 개체의 ToString()을 호출하고 IHtmlString 마커 인터페이스 덕분에 문자열을 인코딩하지 않습니다.

관련 문제