Question

Nous avons une situation où nous aurons deux VSTO Outlook add-ins qui commencent avec une certaine commun code, mais le code sera probablement divergent au fil du temps.Idéalement, nous aimerions restructurer les compléments de factoriser le code commun dans une autre dll partagée, mais pour des raisons non techniques, ce n'est pas une option à l'heure actuelle.Quels problèmes avez-vous anticiper si les deux compléments sont déployés sur la même instance outlook?Voyez-vous des problèmes surgissent parce qu'il y aurait deux classes avec le même nom et le même espace de noms, mais avec des définitions différentes chargé par les deux différents compléments sur la même instance outlook?Aussi l'un des add-ins doit appeler une forme dans l'autre ajoutez-en.Pensez-vous que ce sera un problème avec les différences dans le code commun?

En supposant que nous gérons pour restructurer les compléments de séparer une dll avec tous les code commun, sera Outlook ont un problème avec les différentes versions de la même dll déployés par les deux add-ins?

Était-ce utile?

La solution

Mon projet actuel avait fait similaire de partage de code entre les compléments VSTO pour Mot.Pour l'instant, nous sommes à l'aide de références de l'autre projet avec la mention "copie locale" au moment de la compilation, mais souhaitez commutateur de référence le code de la GAC si nous sommes libérés à partir du scénario de la construction du composant partagé nécessitant une reconstruction de l'ensemble des projets qui en dépendent.

Si l'ensemble de votre bibliothèque partagée dll "copie locale" lors de la construction, vous ne devriez pas avoir de nom/de l'espace de noms des conflits - mais vous devez le reconstruire le complément à chaque fois que votre bibliothèque partagée des modifications de code.Si vous voulez les versions à être traités séparément, de créer un add-in qui servira de bibliothèque, qui installe une copie de lui-même dans le GAC a tellement d'autres add-ins peuvent l'utiliser.J'ai inclus quelques liens qui montrent comment appeler le code d'autres add-ins.Dans la pratique, je l'ai trouvé un peu maladroit en raison de VSTO être .Net sur le dessus de l'Office du code natif.

Références:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top