Je me suis demandé comment je peux arrêter ces avertissements de compilateur ennuyeux "La valeur de la classe ou du CSSClass n'est pas définie" provenant de mes contrôles d'utilisateur partielle ASP.NET MVC / ASCX. Le CSS est défini correctement, mais la référence au fichier CSS est évidemment sur la page principale uniquement. Mes vues partielles contiennent beaucoup de références de classe CSS sur Div's, etc. et donc je reçois des quantités massives d'avertissements que je ne devrais pas voir. p>
Comment puis-je résoudre ce problème? p>
Merci! P>
3 Réponses :
Un moyen est d'activer la vérification de la syntaxe HTML (Outils-> Options-> Editeur de texte-> HTML-> Afficher les erreurs -> dans CSS). P>
J'utilise le firefox Tidy Plug in, qui donne un meilleur conseil, IMHO. P>
Inclure ceci dans votre vision partielle:
<% if (false) { %> <link rel="stylesheet" type="text/css" ... <% } %>
Je vais essayer cela, merci. C'est une faille dans ASP.NET MVC que, espérons-le, sera corrigée dans la prochaine version ....
Alex, ce n'est pas un correctif car il est valide HTML d'utiliser des classes non dans la feuille de style. La solution de Robert corrige les "erreurs" sur les classes qui se trouvent dans le CSS, mais VS donnera toujours des avertissements incorrects sur ceux qui ne sont pas, même dans Non-MVC ASP.NET. Donc, je ne peux pas accepter que c'est une "défaute" MVC ».
"... pas une solution ..." -> "... pas une faille ..."
Vous avez raison, c'est plus d'une faille de studio visuelle. Blâmé le mauvais gars :)
Ce n'est pas une faille dans ASP.NET MVC, et je ne pense pas que cela va être que cela va être corrigé dans la prochaine version. C'est une «limitation» (remarquez comment j'évite le mot défaut) dans ASP.NET (pas seulement MVC) qui l'empêche d'accéder à des informations d'en-tête incluses dans la page principale. Donc, vous n'avez pas accès à JavaScript / CSS dans les pages de contenu / UserControls. P>
Le code fourni par Robert Harvey est une solution de hack que nous utilisons pour surmonter cela. P>
Il fonctionne en utilisant le fichier inclus dans un bloc IF toujours faux. Donc, le compilateur voit le fichier CSS mais l'exécution n'est pas. P>