사용자 정의 HTML 도우미가보기 (Razor / Asp.Net MVC3)에서 사용 가능하지 않습니다.

asp.net-mvc asp.net-mvc-3 c# html-agility-pack html-helper

문제

HtmlAgilityPack을 사용하여 Whitelist HTML Sanitizer를 구현하려고합니다. 나는 그것을 사용할 수있는 재사용 가능한 HTML 도우미를 만들고 싶다. 나는 그 일을 잘 사용하고있는 다른 커스텀 HTML 헬퍼를 가지고있다. 그러나 어떤 이유로 이건 작동하지 않을 것이다. 보기에서 호출하려고 할 때마다 Sanitize 메서드를 찾을 수 없습니다. 내가하려고하는 전화는 부분적인보기이며 다음과 같습니다.

@Html.Raw(Html.Sanitize(Model.Body))

내 HTML 도우미 클래스 :

@Html.Raw(Html.Sanitize(Model.Body))

이 코드의 대부분은 이 게시물 의 답변으로 이동합니다.

이미 확인한 사항 :

  1. 네임 스페이스가 Web.Config 파일에 올바르게 정의되었습니다. (네임 스페이스의 다른 사람들이 이미 작동하기 때문에이 사실을 알고 있습니다)
  2. 프로젝트를 깨끗하게 빌드하십시오.
  3. Visual Studio 2010을 다시 시작했습니다.

왜 내가 수업에서 그 방법을 호출 할 수없는 것 같아요?

수락 된 답변

HtmlHelper를 제대로 확장 한 것처럼 보이지 않습니다.

함수 정의에 다음이 누락되었습니다.

public static MvcHtmlString Sanitize(this HtmlHelper helper, string input)

UrlHelper를 사용하여 코드를 단순화하는 클래스 확장 사용 에 대한이 게시물을 확인하십시오.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.