2009-07-20 8 views
1

Existe-t-il un processus recommandé pour créer des assemblys ASP.NET réutilisables qui contiennent des UserControls pouvant être partagés entre des projets dans des solutions distinctes?Création d'assemblys UserControl réutilisables avec VS2008

Nous avons avons actuellement une série d'étapes post-compilation qui exécutent aspnet_compiler.exe sur le projet, générer les ensembles précompilés en utilisant un nom donné, suivi par aspnet_merge.exe de combiner chaque ensemble de contrôle individuel en un seul ensemble - qui est ensuite copié dans le répertoire bin pour le projet. Malheureusement, les contrôles utilisateur compilés de cette manière ne «jouent pas bien» avec le concepteur VS - et jettent des exceptions au moment du design qui rendent le travail avec les pages qui les hébergent lourd.

Y a-t-il une meilleure approche pour ce faire?

Répondre

1

C'est la seule approche qui va les mettre dans un ensemble autonome portable comme ça. On dirait que vous savez déjà tout référencé ici, mais c'est le meilleur article que je connaisse qui discute de la technique:

http://blogs.msdn.com/davidebb/archive/2005/10/30/487160.aspx

Ce que je l'ai toujours fait est tout simplement exiger la ascx d'exister aussi. Le code-behind peut être dans la DLL portable, mais nécessite toujours l'ascx. Vous pouvez aider à gérer les doublons en les conservant tous au même endroit et en mappant les répertoires virtuels à cet emplacement. L'avantage de cette approche, même si elle est de faible technologie, est que chaque application, si elle veut, pourrait personnaliser l'apparence de l'ascx. Il pourrait bouger les choses ou changer le style, etc, et le code-behind ne serait pas le plus sage tant que les changements n'affectaient pas les contrôles du serveur existent.

Questions connexes