Comment définir une méthode dans Razor?
c#
asp.net-mvc
asp.net-mvc-3
razor
Rookian
la source
la source
Réponses:
Laissant seuls les débats sur le moment où (si jamais) cela devrait être fait, @functions est la façon dont vous le faites.
la source
@functions
est un bon endroit pour organiser l' affichage du code de génération spécifique .Tu veux dire aide en ligne?
la source
Il est très simple de définir une fonction à l'intérieur du rasoir.
Vous pouvez donc appeler une fonction n'importe où. Comme
Cependant, ce même travail peut également être effectué
helper
. Par exempleAlors, quelle est la difference?? Selon ce billet précédent, @helpers et @functions partagent une chose en commun: ils font de la réutilisation du code une possibilité dans les pages Web. Ils partagent également une autre chose en commun - ils se ressemblent à première vue, ce qui pourrait créer un peu de confusion dans leurs rôles. Mais ce ne sont pas les mêmes. En substance, un assistant est un extrait réutilisable de Razor sytnax exposé en tant que méthode, et est destiné au rendu HTML vers le navigateur, tandis qu'une fonction est une méthode utilitaire statique qui peut être appelée de n'importe où dans votre application Web Pages. Le type de retour pour une aide est toujours HelperResult, tandis que le type de retour pour une fonction est ce que vous voulez qu'elle soit.
la source
@Functions
préfixe comme@OrderedList(...)
fonctionne pour moi dans .netcore.Vous pouvez également le faire avec un Func comme celui-ci
la source
Razor n'est qu'un moteur de modèles.
Vous devez créer une classe régulière.
Si vous voulez créer une méthode à l'intérieur d'une page Razor, mettez-les dans un
@functions
bloc .la source
Vous pouvez simplement les déclarer en tant que fonctions locales dans un bloc de rasoir (ie
@{}
).la source
Vous pouvez également simplement utiliser le
@{ }
bloc pour créer des fonctions:Plus tard dans votre page rasoir:
la source
MyModelVm.cs
Index.cshtml
la source