Verwenden Sie this .Um die "@helper" -Funktion in Razor zu verwenden, müssen Sie die CSHTML-Datei in den App_Code-Ordner Ihrer App platzieren. In ASP.NET MVC 3 gibt es keinen Ordner "Views/Helpers". Der Blogpost von ScottGu wurde geschrieben, bevor das Feature vollständig implementiert wurde, und einige der darin enthaltenen Notizen sind nicht mehr vollständig korrekt.
Um den "@helper", den Sie geschrieben haben, zu benennen, müssen Sie sowohl den Dateinamen als auch den Namen des Helfers darin einfügen. wenn Sie diese Helfer haben zum Beispiel:
~/App_Code/MyHelper.cshtml
Und diesen Inhalt:
@helper ShowStuff(string stuff) {
<p>@stuff</p>
}
Dann rufen Sie es wie folgt:
@MyHelper.ShowStuff("some stuff!")
Der Helfer nur mit der Datei im App_Code arbeitet Mappe. –
Ich habe ein Problem bei der Bereitstellung an einen Hosting-Provider festgestellt, der den App_Code-Ordner nicht erlaubt hat. Daher kann ich diese Helfer derzeit überhaupt nicht verwenden. http://StackOverflow.com/a/16057766/678338 –
@SeanMill Sie können dies oben in der Ansicht "@ usingProject.Helpers" hinzufügen und Ihren Helfer "@ Html.MyCustomHelper()" verwenden. Bei meiner Anwendung füge ich ein neues Projekt zur Lösung namens UtilsProject hinzu und innerhalb dessen habe ich meinen benutzerdefinierten Helfer. –