2014-05-20 3 views
2

J'ai un site ASP classique hébergé sur Azure (migré maintenant, réécrit plus tard) et j'ai constaté qu'il y avait une dépendance à AspEmail.Comment exécutez-vous cmd élevé sur le site Web Azure?

Pour vous inscrire sur une boîte IIS normale la commande est:

regsvr32 c: \ AspEmailDir \ AspEmail.dll

La réponse SO here montre comment faire cela avec un WebRole mais j'avoir un site web.

Je pensais qu'un WebJob pourrait fonctionner, ou existe-t-il un autre moyen?

Répondre

1

Je ne pense pas que vous serez en mesure de le faire sur le site Web Azure. Je vois deux solutions ici:

  1. Déplacer vers le rôle Web. Ensuite, vous pouvez l'exécuter via la tâche de démarrage. Débarrassez-vous de AspEmail ou placez-le dans un rôle de travail distinct.
+0

Essayer d'ajouter à webrole dans la même solution, mais ne semble pas trouver le bon endroit pour mettre le fichier cmd afin qu'il le renvoie vers le dossier bin. Il n'y a aucun changement de l'action de construction si je le mets dans le dossier WebRole. Impossible de le déplacer au même niveau que le ServiceDefinition (impossible d'ajouter quelque chose comme un projet normal). Également essayé Webjob qui a presque fonctionné, sauf son non élevé. –

+0

Pour l'option 2, un rôle de travailleur déployé sur le même site Web fonctionnera-t-il? Cela devrait être considéré comme le même vm et la DLL sera enregistrée correctement? –

+0

Il semble que vous ajoutez le fichier cmd au projet de définition de service cloud. Mais il devrait être dans le même projet que RoleEntryPoint. En ce qui concerne le déploiement sur la même machine virtuelle que le site Web, je ne suis pas certain que cela fonctionnera. Alternativement, vous pouvez simplement supprimer AspEmail de votre projet et utiliser quelque chose comme SendGrid. Moins d'inquiétude, plus fiable et ne coûte pas cher. – SoftwareFactor

Questions connexes