Est-ce System.AddIn surtout de rendre plus facile à utiliser Remoting ou est-il plus difficile de le faire?

StackOverflow https://stackoverflow.com/questions/1736683

Question

Il faut au moins 7 ensembles et en limitant le modèle de mon AddIn de données aux types de données qui peut remoting traiter avant que les caractéristiques d'isolation AppDomain commencent à travailler. Il est si complexe! Le blog des équipes System.AddIn implique pour moi, ils ont essayé de recréer un modèle mental de COM, un modèle que je ne comprenais pas très bien en premier lieu et je suis pas vendus sur les avantages. (Si COM est si bon, pourquoi est il mort? Question -rhetorical.) Si je ne ai pas besoin de miroir ou avec l'héritage Interop COM (comme VSTO n'utilisant System.AddIn), est-il possible de créer simplement des classes qui chargent en charge un nouveau AppDomain?

Je peux écrire le code de découverte moi-même, je l'ai fait avant et une mise en œuvre naïve est assez rapide parce que je ne suis pas comme itérer les assemblées dans le GAC!

Ma question spécifique est, puis-je obtenir l'isolement AppDomain qui AddIns fournissent quelques extraits de code Remoting, et quels seraient les être?

Était-ce utile?

La solution

Je ne suis pas tout à fait sûr que que toute réponse à votre question est conforme aux conditions du site - il n'y a pas de solution

.

Oui, Remoting est plus facile comme cela est fait pour vous. Cependant, il est fortement contrôlé et que vous avez identifié, nécessite un peu de travail pour sonder tous ensemble. Le fichier cache vomis par le processus de découverte est à peine accueillir soit.

System.AddIn excelle dans l'isolement, ce qui est en fait un peu d'âne remonter à partir de zéro d'une manière robuste et souple. Il prend en charge l'hébergement de processus croix et passage assez simple des utilisateurs éléments WPF d'un domaine à l'autre.

Une chose à retenir est cependant que le public cible du CRG ne sont pas ceux qui essaient de relier deux applications ensemble. Il vise les développeurs qui veulent des systèmes encore sécurisés (pluggable cross process hébergement protège l'application racine d'exceptions non gérées, AppDomains permettent d'exécuter du code potentiellement étranger à la sécurité définie). De la plupart des communications, vous diriger directement vers System.Runtime.Remoting ou WCF.

Si vous voulez continuer avec System.AddIn, d'utiliser le plugin constructeur pipeline rel="nofollow"> pour le studio visuel!

En conclusion - vous pouvez obtenir l'isolement System.AddIn en utilisant Remoting mais pour obtenir un système convenable, vous aurez besoin de plus de quelques extraits. Je suis en train de reproduire moi-même et je trébuchement sur tout composant d'interface à distance -. Quelque chose System.AddIn fait sans accroc

Autres conseils

Après déconner avec System.Add pendant un certain temps, je suis convaincu qu'il a été ajouté comme unique solution spécial destiné Microsoft. Je suis surpris qu'il a élevée à une partie de base du framework .NET. Il ne semble pas avoir le raffinement et le polissage nécessaire pour un composant .NET framework général.

Je voudrais trouver une autre façon de créer .NET géré compléments qui ne nécessitent pas beaucoup d'efforts.

scroll top