Redéploiement d'un assembly BizTalk à partir de Visual Studio

Au cours du développement d'un assembly, vous êtes amené à déployer l'assembly, à le tester, à le modifier et à le redéployer, et ce de manière répétée. Dans les versions précédentes de BizTalk Server, lorsque vous vouliez redéployer un assembly sans modifier son numéro de version, il vous fallait d'abord l'arrêter manuellement, le désinscrire et annuler la liaison des artefacts qu'il contenait dans BizTalk Server avant de le supprimer de la base de données de gestion (configuration) BizTalk. En outre, après le redéploiement de l'assembly, vous deviez lier, inscrire et démarrer ses artefacts dans BizTalk Server.

Avec BizTalk Server, toutefois, lorsque vous activez l’option Redéployer dans Visual Studio, BizTalk Server effectue automatiquement toutes les étapes pour redéployer l’assembly à votre place. Bien que vous puissiez redéployer un assembly au niveau du projet (par exemple, en cliquant avec le bouton droit sur le projet dans l'Explorateur de solutions, puis en cliquant sur Déployer) pour redéployer un assembly unique, il est vivement recommandé de toujours redéployer les assemblys au niveau de la solution (en cliquant avec le bouton droit sur la solution et en sélectionnant Déployer). Cela permet de redéployer tous les assemblys de la solution d'un coup et de gérer toutes les étapes nécessaires en présence de dépendances (voir plus loin).

Important

Bien qu'il existe des cas où l'assembly peut être redéployé au niveau du projet, il est de mise de toujours le redéployer au niveau de la solution.

Lorsque vous redéployez un assembly, gardez les points importants suivants à l'esprit :

  • Vous devez installer le nouvel assembly dans le GAC. Lorsque vous redéployez un assembly, vous devez toujours installer la nouvelle version de l’assembly dans le GAC, comme décrit dans Guide pratique pour installer un assembly dans le GAC. Vous pouvez procéder à cette installation après le redéploiement de l'assembly.

  • En présence de dépendances, vous devez toujours redéployer l'assembly au niveau de la solution. Si votre solution comporte plusieurs assemblys et que l'un ou plusieurs d'entre eux présentent une dépendance avec l'assembly à redéployer, vous devez redéployer les assemblys au niveau de la solution. En effet, si vous redéployez un assembly au niveau du projet, BizTalk Server arrête, désinscrit, supprime la liaison et supprime les artefacts figurant dans les assemblys qui dépendent de cet assembly ou dont dépend cet assembly. BizTalk Server n'effectue pas ensuite les opérations nécessaires au déploiement, à la liaison, à l'inscription et au démarrage des artefacts. Lorsque vous redéployez la solution entière, en revanche, BizTalk Server effectue automatiquement les opérations nécessaires à l'annulation du déploiement et au redéploiement de tous les artefacts de la solution en fonction de leurs dépendances.

  • Vous pouvez être amené à redéployer manuellement les assemblys dépendants. BizTalk Server annule toujours le déploiement des assemblys dépendants. Dans les cas suivants, cependant, vous devez vous-même procéder au déploiement, à la liaison et à l'inscription des artefacts de chaque assembly dépendant après avoir redéployé l'assembly dont dépend l'assembly :

    • si vous redéployez au niveau du projet un assembly dont dépend un autre assembly de la même solution ;

    • si vous redéployez un assembly au niveau de la solution, mais qu'un assembly dépendant existe dans une autre solution.

      Par exemple, si vous deviez redéployer uniquement l'assembly 3 indiqué dans le schéma suivant, une fois le redéploiement effectué, il vous faudrait déployer, lier et inscrire les artefacts de l'assembly 2 avant de déployer, de lier et d'inscrire les artefacts de l'assembly 1.

      Assemblys avec dépendances

      Une autre approche consiste à éviter le déploiement inutile des assemblys principaux qui n'ont pas été modifiés. Par exemple, dans le schéma ci-dessus, si d'autres assemblys dépendent des assemblys 2 et 3, et si aucun de ces assemblys n'a été mis à jour. Décochez l’option Déployer dans le gestionnaire de configuration pour les projets Assembly 2 et Assembly 3. Ainsi, le déploiement des assemblys externes qui dépendent des assemblys 2 et 3 ne sera pas annulé et un redéploiement ne sera pas nécessaire. Pour plus d’informations, consultez Guide pratique pour définir les propriétés de déploiement dans Visual Studio.

  • Vous devez redémarrer les instances d'hôte. Lorsque vous redéployez un assembly qui contient une orchestration sans modifier le numéro de version de l'assembly, l'assembly existant est remplacé dans la base de données de gestion BizTalk. Pour que la modification entre en vigueur, cependant, vous devez redémarrer chaque instance de l'hôte auquel est liée l'orchestration. Vous avez la possibilité de configurer le redémarrage automatique de toutes les instances d'hôte sur l'ordinateur local au moment du redéploiement d'un assembly. Pour obtenir des instructions, consultez Définition des propriétés de déploiement dans Visual Studio. Vous pouvez également arrêter et démarrer manuellement chaque instance d’hôte, comme décrit dans Comment arrêter une instance d’hôte et Démarrer une instance d’hôte.

Important

L'option Redéployer ignorant le contrôle de version, il est recommandé de ne l'utiliser que lors du développement.

Prérequis

Pour exécuter la procédure décrite dans cette rubrique, vous devez être connecté avec un compte membre du groupe d'administrateurs BizTalk Server. En outre, votre compte doit également disposer d'une autorisation de lecture/écriture sur le système de fichiers local et le Global Assembly Cache (GAC). Le compte des administrateurs de l'ordinateur local dispose de ces autorisations.

Pour redéployer une solution BizTalk

Utilisation de l'Explorateur de solutions de Visual Studio

  1. Vérifiez que l’option Redéployer est activée dans Propriétés de déploiement pour chaque projet de la solution, comme décrit dans Comment définir les propriétés de déploiement dans Visual Studio. Cette option est activée par défaut.

  2. Dans Visual Studio Explorateur de solutions, cliquez avec le bouton droit sur une solution BizTalk, puis cliquez sur Déployer.

    Les assemblys de la solution sont déployés dans l'application BizTalk spécifiée. L'état du processus de compilation et de déploiement s'affiche dans l'angle inférieur gauche de la page.

Utilisation de l'invite de commandes Visual Studio

  1. Vérifiez que l’option Redéployer est activée dans Propriétés de déploiement pour chaque projet de la solution, comme décrit dans Comment définir les propriétés de déploiement dans Visual Studio. Cette option est activée par défaut.

  2. Démarrez l’invite de commandes Visual Studio.

  3. Tapez la commande suivante en utilisant les valeurs appropriées, comme décrit dans le tableau suivant :

    devenv /deploySolnConfigName SolutionName

    Exemple :

    devenv /deploy Release "C:\Documents and Settings\someuser\My Documents\Visual Studio\Projects\MySolution\MySolution.sln"

    Paramètre Valeur
    /Déployer Déploie une solution après une génération ou une regénération.
    SolnConfigName Nom de la configuration de solution qui sera utilisée pour générer la solution nommée dans SolutionName.
    SolutionName Chemin d'accès complet et nom du fichier de la solution.

Voir aussi

Déploiement des assemblys BizTalk à partir de Visual Studio dans une application BizTalk