Comment se fait-classes dans les sous-dossiers dans mon dossier App_Code ne sont pas trouvés correctement?
J'obtiens l'erreur suivante quand j'ai mis les fichiers de classe dans les sous-dossiers de mon dossier App_Code:
errorCS0246: le type ou Le nom d'espace de noms 'MyClassName' n'a pas pu être trouvée (vous manque une directive using ou une référence d'assembly?)
Cette classe n'est pas dans un espace de noms à tous. Des idées?
OriginalL'auteur Greg | 2008-09-30
Vous devez vous connecter pour publier un commentaire.
Vous devez ajouter codeSubDirectories à votre élément de compilation dans le web.config
OriginalL'auteur AnthonyWJones
Vérifier BuildAction propriété du fichier. Cela doit être réglé à "Compiler"
OriginalL'auteur Firoj Husen Shaikh
Est-il possible que vous n'avez pas réglé le dossier comme une application dans IIS (ou votre serveur web)? Si non, alors le App_Code que l'on utilise est qu'à partir de la parent dossier (ou le lendemain de l'application vers le haut).
Assurer que le dossier est marqué comme une application, et utilise la version correcte de ASP.NET.
OriginalL'auteur Marc Gravell
Il pourrait ne pas être la bonne voie, mais je trouve le plus facile.
Créer la classe dans le Dossier principal, comme d'habitude, puis de le déplacer avec votre souris à votre sous-dossier. Re-compiler et tout doit être beau.
OriginalL'auteur peterincumbria
Que vous ajouter des dossiers à votre app_code, ils sont séparés par des espaces de noms différents, si je me souviens bien, à l'aide de l'espace de noms par défaut à la racine, puis en ajoutant pour chaque dossier.
OriginalL'auteur Mitchel Sellers
Dans Visual Studio (2010, au moins, mais je me souviens dernières versions), vous pouvez faire un clic droit sur le dossier dans l'Explorateur de solutions, puis sélectionnez "Inclure dans le Projet".
Puis sur l'onglet propriétés pour chaque fichier (ou sélectionnez-les tous à la fois), vous choisissez "Compiler" pour l'Action" de la propriété.
Cela a fonctionné pour moi.
OriginalL'auteur TonyH