Maison > Article > développement back-end > Quelle est la différence entre créer un nouveau site internet et un nouveau projet WEB dans VS ?
●Le site Web est compilé rapidement, en utilisant le mode de compilation incrémentielle. Ce n'est qu'après la modification du fichier que cette partie sera compilée de manière incrémentielle.
●Assemblage généré
WebSite : Générez un nom d'assembly aléatoire Vous devez utiliser le plug-in WebDeployment pour générer un seul assembly
.
WebApplication : Vous pouvez spécifier le projet de site Web pour générer un seul assembly. Puisqu'il s'agit d'un assembly indépendant, vous pouvez spécifier le nom, la version, l'emplacement de sortie et d'autres informations de l'assembly d'application, tout comme les autres projets
.
●Le site Web peut être divisé en plusieurs projets pour une gestion plus facile
●Un fichier peut être exclu de la gestion du projet et du code source
●Prend facilement en charge Team Build of VSTS pour la construction quotidienne
●Fonction d'inspection de code plus puissante et la stratégie d'inspection est contrôlée par le code source
●Vous pouvez effectuer votre propre traitement prescrit avant et après la compilation
●Prise en charge forte des classes de ressources pour App_GlobalResources (c'est mentionné en ligne, mais je n'en ai pas encore entendu parler)
●Mettez à niveau directement les systèmes à grande échelle construits à l'aide de VS2003
●Compilez la page de manière dynamique et vous pourrez voir l'effet immédiatement sans compiler tout le site (principal avantage)
● Comme ci-dessus, vous pouvez empêcher qu'une mauvaise partie n'interfère avec la partie utilisée (vous pouvez exiger que vous ne puissiez vous enregistrer qu'une fois la compilation réussie)
●Vous pouvez générer un assemblage pour chaque page (cette méthode n'est généralement pas utilisée)
●Vous pouvez traiter un répertoire comme une application Web, copier les fichiers directement et les publier sans fichiers de projet (adapté aux petits sites)
●Vous pouvez également compiler la page dans l'assembly (ne doit pas être utilisée, et WebApplication peut également être implémentée via le plug-in WebDeployment)
VS2005 SP1 dispose d'un programme de conversion intégré, qui peut facilement convertir WebSite en WebApplication
Copiez simplement le fichier, cliquez avec le bouton droit et exécutez « Convertir en application Web ».
Je n'ai trouvé aucun outil de conversion inverse spécial, mais après comparaison, j'ai trouvé que la conversion est très simple.
Supprimez tous les *.designer.cs
Remplacez par lots Codebehind="******.aspx.cs" dans les fichiers *.aspx, *.ascx, *.master page par CodeFile="******.aspx.cs"
De cette façon, vous pouvez le reconvertir
Scénario |
Projet d'application Web |
Projet de site Web |
Définition du projet |
Similaire à Visual Studio .NET 2003 , en raison de l'existence du fichier projet, seuls les fichiers référencés par le fichier projet seront affichés dans la Solution L'Explorateur apparaît dans . Et seuls ces fichiers seront compilés. Vous pouvez facilement diviser une application ASP.NET en plusieurs projets Visual Studio. Il est facile d’exclure un fichier du contrôle du projet et du code source.
|
Une structure de répertoires est un projet WEB. Aucun fichier de projet n'existe. Tous les fichiers de ce répertoire existent dans le cadre du projet. |
Compiler et générer |
est presque identique au mode de compilation de projets d'application Visual Studio .NET 2003 Web. Tous les fichiers de classe code-behind et les fichiers de classe indépendants du projet sont compilés dans un assembly d'application indépendant. Cet ensemble d'applications est placé dans le répertoire Bin. Puisqu'il s'agit d'un ensemble d'applications indépendant, vous pouvez spécifier le nom de l'ensemble d'applications, la version, l'emplacement de sortie et d'autres informations. Par exemple : Le modèle Model-View-Controller (MVC) peut être bien utilisé ici. Parce qu'il permet de référencer une classe distincte dans les pages WEB et les contrôles utilisateur WEB. |
La commande compile (Build) sert simplement à tester si le site WEB est compilé correctement, et à déboguer un WEB Pour les projets de sites Web, ceci est réalisé en compilant dynamiquement des pages et des classes en s'appuyant sur vos fichiers de code source, ASP.net. Les sites précompilés et les sites compilés dynamiquement utilisent la même sémantique de compilation Vous pouvez améliorer les performances de votre site grâce à la précompilation. ASP.net Le système de compilation dynamique propose deux modèles : le modèle de compilation batch par défaut et le noms fixes Compilez le modèle. batch Dans le modèle de compilation, il est compilé en plusieurs ensembles d'applications (généralement un par répertoire). À l’heure actuelle, lorsque l’on regarde l’ensemble de l’application, il est difficile de déterminer de quel répertoire il s’agit. Noms fixes Dans le modèle de compilation, chaque page du site Web ou chaque contrôle utilisateur est compilé dans un ensemble d'applications.
|
Itératif |
Lors du débogage ou de l'exécution de la page Web, vous devez compiler l'intégralité du projet WEB. Compiler l'intégralité du projet WEB est généralement plus rapide car Visual Studio utilise le mode de compilation incrémentielle, donc seuls les fichiers sont modifiés. alors cette partie sera compilée progressivement. |
Vous pouvez configurer les propriétés de compilation de Visual Studio 2005 : compiler l'intégralité du site, compiler une page spécifique ou ne rien faire. Dans le dernier cas, lorsque vous exécutez un site WEB, Visual Studio ouvre uniquement un navigateur et accède à la page courante ou de démarrage, lorsque cette requête est envoyée, ASP.net démarre la compilation dynamique. Dans ce mode, la page est compilée dynamiquement ou compilée dans différents ensembles d'applications, donc si vous déboguez ou exécutez une page, l'ensemble du projet n'a pas besoin d'être compilé. La pièce comportant des erreurs n'interfère pas avec la pièce que vous utilisez. Par défaut, lorsque vous exécutez ou déboguez une page WEB, Visual Studio compile entièrementWeb Projet Site. Faites ceci pour voir toutes les erreurs lors de la compilation. Cependant, pendant le développement, la compilation complète de l'intégralité du site peut être assez lente. Par conséquent, il est recommandé de compiler la page actuelle uniquement pendant le développement et le débogage.
|
Déploiement |
Étant donné que tous les fichiers de classe sont compilés dans un assembly d'application, lorsque vous déployez, il vous suffit de combiner cet assembly d'application avec le fichier .aspx, Les fichiers .ascx sont déployés avec d'autres fichiers de contenu statique. Sous ce modèle, le fichier .aspx ne sera pas compilé. Il sera compilé dynamiquement lorsque le navigateur accédera à cette page. Cependant, si vous utilisez des Projets de déploiement Web ( un plugin Visual Studio 2005, il n'est pas inclus par défaut VS2005), vous pouvez compiler le fichier .aspx dans une concentration de programme d'application. Si vous ne modifiez qu'une petite ligne de code, vous devez également compiler tout le code de l'ensemble du projet et publier l'ensemble d'application contenant tout le code.
|
Utilisez la commande Publier le site Web de Visual Studio , vous pouvez mettre Les fichiers .aspx et code-behind sont compilés dans des assemblys d'application, vous voyez donc les .aspx L'en-tête du fichier a changé. (Remarque : La commande Build ne vous donne pas l'ensemble des applications déployables) La dernière version de Publier prendra en charge la compilation uniquement des fichiers code-behind , de sorte qu'une fois déployée, elle ne changera pas Fichier .aspx . Par défaut, il est pré-compilé en plusieurs ensembles d'applications dans le répertoire Bin Généralement, un répertoire correspond à un ensemble d'applications. L'option de déploiementnoms fixes permet à chaque WEB page ou à chaque WEB de contrôler créer un ensemble d’applications afin que chaque page dispose d’un ensemble d’applications déployables. Cependant, l'option de déploiement noms fixes augmente le nombre d'ensembles d'applications et l'utilisation réelle de la mémoire. |
Mise à niveau depuis Visual Studio .NET 2003 |
Parce qu'il utilise le même modèle de développement de projet WEB que VS2003, la mise à niveau est très, très simple. |
Les différentes options de compilation du projet Site Web le rendent très différent du projet Visual Studio .NET 2003WEB. Bien que Microsoft fournisse un assistant de conversion, si votre projet est un projet VS2003 complexe, après avoir utilisé cet assistant de conversion, vous devez toujours vous référer au manuel de conversion et faire beaucoup de travail. Si vous souhaitez effectuer une mise à niveau depuis VS2003, il est recommandé de ne pas utiliser ce modèle de développement de site WEB. Utilisez plutôt le projet Application Web . |
Option ou Tâche |
Projets d'applications Web |
Projets de sites Web |
Vous disposez d'une grande application Visual Studio .NET 2003 Web qui doit être migrée vers VS2005. |
√ |
|
J'aime utiliser le modèle de code à page unique pour développer des pages de sites Web. Au lieu d'utiliser le modèle code-behind pour écrire les pages du site Web |
|
√ |
Préférez rédiger votre site internet de la manière suivante : |
|
√ |
Lors de la rédaction d'une page, afin de voir rapidement l'effet d'écriture, compilez dynamiquement la page et vous pourrez voir l'effet immédiatement sans compiler l'intégralité du site. |
||
(C'est-à-dire qu'il vous suffit de sauvegarder le fichier et de l'actualiser dans le navigateur pour voir l'effet que vous venez de créer) |
||
Besoin de contrôler le nom de l'assembly d'application compilé |
√ |
|
Nécessite un ensemble d'applications par page |
|
√ |
Une classe distincte doit être utilisée dans la page WEB ou dans le contrôle utilisateur WEB. |
√ |
|
Vous devez utiliser plusieurs Projets pour créer une application Web. |
√ |
|
Besoin de gérer les événements pré-build et post-build (vous devez avoir votre propre traitement supplémentaire avant et après compilation) |
√ |
|
J'espère traiter un répertoire comme une application WEB sans avoir besoin de créer un nouveau fichier Projet . |
|
√ |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!