Ok. C'est probablement une question vraiment stupide, mais je vais le demander de toute façon ...Comment utiliser les extensions et les méthodes utilitaires dans le balisage?
Comment puis-je utiliser des extensions et des méthodes utilitaires dans mon balisage ASP.Net? Par exemple, (par exemple) j'ai une méthode d'extension DateTime appelé « ToExampleString() » (contenu dans la classe DateTimeExtensions dans mon Common.Extensions projet) et je veux l'utiliser dans mon balisage dans ItemTemplate du ListView:
<ItemTemplate>
<span><%# ((DateTime)Eval("DateStarted")).ToExampleString() %></span>
</ItemTemplate>
Je reçois l'erreur suivante:
« System.DateTime » ne contient pas de définition de « ToExampleString » et aucune méthode d'extension « ToExampleString » accepter un premier argument de type « System.DateTime » pourrait être trouvé (manque-t-il une directive using ou une référence d'assembly?)
La page ne peut tout simplement pas voir la méthode des extensions.
De même, comment puis-je faire connaissance d'une classe utilitaire de balisage de ma page:
<span><%# ExampleUtility.ProcessDate(Eval("DateStarted") %></span>
Quelles mesures dois-je prendre pour faire ce travail de choses? Je suppose que je néglige quelque chose d'une évidence stupide?
Merci
Merci Yuriy. J'ai une instruction "using Common.Extensions" dans mon code derrière. Est-ce que ça devrait marcher? –
Non, je crois que vous devez également le placer dans le balisage. –
L'instruction using dans le code behind permet à votre code derrière la classe de voir les méthodes d'extension, mais vous devez également importer l'espace de noms dans le fichier de marquage. –