2009-08-26 5 views
1

Toutes les questions se rapportent à des projets de site Web.Référence automatique des fichiers de classe dans App_Code par rapport à la référence des fichiers de classe en dehors de App_Code


1) Pourquoi automatiquement sont des classes de fichiers dans le dossier App_Code référencé par le reste d'application, alors que les classes de fichiers créés en dehors App_Code ne sont pas?


2) Je ne sais pas grand chose sur la compilation, mais pourquoi avons-nous besoin pour faire explicitement référence des fichiers de classe créés en dehors App_Code? Parce que ces fichiers seront compilés dans dll créés et nommés par le programmeur et en tant que tel VS ne sait pas ce que les noms de ces DLL et donc ne peut pas automatiquement faire référence à ces DLLs?

3) Les fichiers en dehors de App_Code par défaut ne sont pas automatiquement compilés? Mais pourquoi pas?


Thanx

Répondre

1

Me semble que vous attendez le comportement des applications Web à partir d'un site Web « projet ».

Dans un site Web, chaque fichier ASPX/ASHX (en dehors de App_Code) est considéré comme du contenu. À tout moment, vous pouvez simplement publier quelques-uns des fichiers sur le site Web. Par conséquent, la compilation de tous à la fois en une seule assemblée n'est pas souhaitable.

Avec une application Web, vous ne publiez normalement pas seulement quelques fichiers, vous terminez une phase de l'application, vous compilez tous ensemble, puis publiez.

Vous semblez indiquer que vous avez des "classes" déclarées en dehors de App_Code? Où seraient-ils, sinon dans leur propre projet de dll? Si dans un projet DLL, vous devez créer une référence de projet dans les propriétés du site Web.

+0

Vous devez créer une référence à dll car VS ne sait pas ce que vous appellerez dll contenant cette classe ou ...? – rubysons

+0

Puis-je poser une autre question - si je crée (dans le code derrière) une autre classe publique (en plus de celle dont dérivera la page) et si je mets l'attribut TypeName de ObjectDataSource à cette classe, ODS pour une raison quelconque ne la trouvera pas – rubysons

+0

Peut-être devriez-vous inclure un exemple simple de ce que vous voulez dire dans votre question. – AnthonyWJones

Questions connexes