2011-10-26 3 views
2

Il y a plusieurs années, j'ai hérité d'un projet écrit sur VB.net - le problème avec ce site (c'est un site Web dans Visual Studio, pas une application web) est que si vous changez de code, compiler et télécharger le site entier à chaque fois.Projet Visual Studio nommé aléatoirement DLL

Pourquoi? Parce qu'il semble générer un groupe (peut-être 10-15) de DLL nommées aléatoirement dans le répertoire BIN sur chaque compilation. Chaque page du site référence ensuite ces DLL nommées aléatoirement, donc je dois les télécharger toutes et les nouvelles DLL si le site doit continuer à fonctionner. Quel 'setting' ce site est-il construit en utilisant, ou plus important encore comment puis-je le changer en un système plus commode de génération d'une ou deux DLL nommées de façon cohérente?

Répondre

1

Si vous voulez vous débarrasser de beaucoup DLLS ennuyeux - convertir le site Web à l'application Web autrement utiliser Web Deploy fonctionnalité

Quelques conseils:

  • Chaque projet génère sa propre DLL afin que vous ne puissiez pas avoir moins de DLL que le nombre de projets dans votre solution
  • Visual Studio fournit bien Déployer et publier fonctionnalité qui vérifie si le fichier a été modifié et déployer des fichiers onle mis à jour afin que vous cliquez essentiellement sur un bouton et de déployer est fait pour vous

Quelques liens:

+0

Je sais à propos de ces paramètres, mais ils ne fonctionnent pas dans ce cas, si j'utilise 'Publier', il génère tous les fichiers et toutes ces DLLs nommés aléatoirement. Il n'y a pas moins de DLL que le nombre de projets, il y a 1 projet et environ 15 DLL nommées aléatoirement! –

+0

@ Full Time Skeleton: si vous voulez vous débarrasser de nombreux DLLs ennuyeux - convertir site Web en application Web sinon utiliser la fonctionnalité Web Deploy – sll

+0

Chose est, gars avec qui je travaille utilise des sites Web tout le temps.Il définit le site dans IIS puis l'accède via Visual Studio et commence le processus de construction à partir de là. Il n'a jamais créé de DLL aléatoires et se retrouve avec un bon dossier BIN propre sans références étranges dans ses fichiers. –

4

Modification du site Web à l'application Web pourrait être une bonne solution, mais cela pourrait prendre beaucoup de pros et par contre, et vous avez besoin de temps pour changer et gérer cela.

Changer le drapeau ci-dessous, permettra de supprimer juste le hasard App_web_xyz.dll

Solution Explorer 
    Publish Website 
    Precompile during publishing 
    Configure 
    Merge options 
     [X] Do not merge 

Modification

 [X] Merge each individual folder output to its own assembly 

ou

 [X] Merge all pages and control outputs to a single assembly 

Attention, après ce changement, si 2 fichiers .aspx différents ont le même nom de classe provoquera une erreur de publication! Vous devez refactoriser 'n renommer chaque classe dupliquée.

Questions connexes