J'essaie d'étendre le HtmlHelper
afin qu'il puisse traduire les noms de champs des entités Linq en utilisant un simple fichier de ressources. Le problème est que je ne peux pas obtenir la bonne signature de la méthode étendue. Voici le code:Ajout de HtmlHelper pour traduire le nom du champ en en-tête de colonne en utilisant le fichier de ressources
public static class HtmlHelperExtension
{
public static MvcHtmlString HeaderFromResource<TModel,
TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression)
{
...
return (MvcHtmlString)html.Raw(something)
}
}
Lorsque je tente de l'utiliser dans la vue, comme ceci:
@model IEnumerable<WebApp.Models.TransferInConfig>
...
<th>
@Html.HeaderFromResource(model => model.RemotePath)
</th>
je reçois l'erreur suivante:
'IEnumerable' does not contain a definition for 'RemotePath' and no extension method 'RemotePath'
Editez votre question s'il vous plaît. Votre exemple de code a 'HeaderFromResource' et l'utilisation montre' @ Html.LabelForFromResouce (model => model.IncludeMask) 'et le message d'erreur est' RemotePath'. Rien n'est lié. – vendettamit
Ajoutez également la définition de votre méthode Extension. – vendettamit
Merci pour le heads up. – ByteArtisan