Buduję bardzo prostą stronę MVC3, podczas gdy ja się uczę i mam problemy z następującym deklaratywnym pomocnikiem html Razor.Używanie @Html wewnątrz shared @helper w App_Code
Wewnątrz RMB.cshtml wewnątrz folderze App_Code:
@helper ReplaceCrLf(string strText)
{
@Html.Raw(Html.Encode(strText).Replace(Environment.NewLine, "<br />"));
}
Wewnątrz moim zdaniem index.cshtml:
@RMB.ReplaceCrLf(Model.Post)
To daje mi wyjątku null odniesienia w HTML pomocnika, bo nie robi” wydaje się wiedzieć, co to jest. Mogę obejść to, przechodząc HTML z widoku do helpera, ale zastanawiałem się, czy istnieje inny sposób dla moich udostępnionych pomocników html, aby móc odwoływać się do Html bez mojego przekazywania go, aby kiedykolwiek pomógł mi pisać?
Dla kompletności, tutaj jest obejście robocze:
W RMB.cshtml w App_Code
@helper ReplaceCrLf(string strText, System.Web.Mvc.HtmlHelper Html)
{
@Html.Raw(Html.Encode(strText).Replace(Environment.NewLine, "<br />"));
}
W index.cshtml widzenia
@RMB.ReplaceCrLf(Model.Post, Html)
podstawie tej [Odpowiedź] (http: //stackoverflow.com/questions/4451287/razor-declarative-html-helpers/4453637#4453637), jest obecnie ograniczeniem wprowadzania niestandardowych pomocników w kodzie AppCode teczka. –