HtmlHelper 확장 메서드 내에서 HtmlHelper 메서드에 액세스 - ASP.NET MVC RC2
-
19-08-2019 - |
문제
ASP.NET MVC RC2에서 HtmlHelper 확장을 빌드하려고 합니다.이 코드는 Preview 5에서는 제대로 작동했지만 RC2에서는 더 이상 작동하지 않으며 그 이유를 이해하려고 노력 중입니다.코드는 다음과 같습니다.
public static string EmptyDropDownList(this HtmlHelper htmlHelper, string name, object htmlAttributes)
{
return htmlHelper.DropDownList(name, new SelectList(new string[0]), htmlAttributes);
}
문제는 확장 메서드 내에서 htmlHelper의 모든 메서드에 액세스할 수 없다는 것입니다.따라서 htmlHelper.DropDownList를 찾을 수 없습니다.
어떤 제안이 있으십니까?
해결책
대부분의 htmlhelper 메소드는 해당 네임 스페이스의 클래스에 정의 된 확장자이므로 System.Web.MVC.HTML 네임 스페이스를 포함시켜야합니다.
RC1 (아마도 RC2 소스 코드도)를 찾을 수 있습니다. www.codeplex.com/aspnet. 소스 코드 탭을 클릭하고 MVC 소스 코드 트리로 이동하십시오.
다른 팁
두 가지 선택:
ㅏ."사용"이있는 페이지에 추가하여 Razor View Page (MVC 3 및 MVC 4) 예를 들어
@using UrWeb.Helpers
또는
비.내부 web.config 네임 스페이스 섹션에 추가하십시오
<add namespace="UrWeb.Helpers"/>
제휴하지 않습니다 StackOverflow