Estoy intentando crear una extensión VISX para Visual Studio 2010 que contenga algunas plantillas de proyecto. Estas plantillas no son muy complejas, pero quiero exponer algunas configuraciones adicionales durante la creación a través de un asistente. He configurado correctamente mi paquete VISX para implementar las plantillas en la estructura de directorios que quiero en VS2010, pero tan pronto como trato de configurar y ejecutar un asistente, recibo un error cuando creo la plantilla siguiendo las líneas de:No se puede hacer referencia al ensamblaje del asistente en la plantilla desplegada de VSIX
Error: this template attempted to load component assembly 'My.Assembly, Version 1.0.0.0, Culture=neutral, PublicKeyToken=...
Mi configuración actual es la siguiente:
- Todos los proyectos viven en la misma solución.
- El proyecto VISX incluye referencias de proyecto al proyecto que contiene los asistentes y a cada plantilla.
- Cada plantilla se crea a partir de una plantilla de plantilla de proyecto (... terminología confusa).
- Se agregan a través del diseñador .vsixmanifest como contenido, haciendo referencia a los proyectos.
- Cada archivo .vstemplate tiene un elemento WizardExtension que apunta a la implementación de IWizard y que contiene el ensamblado.
- El ensamblaje del asistente está firmado.
Los archivos .vstemplate apuntan a sus asistentes de la siguiente manera:
<WizardExtension>
<Assembly>My.Assembly, Version=1.0.0.1, Culture=neutral, PublicKeyToken=a494da9e6e53f845, Custom=null </Assembly>
<FullClassName>My.Assembly.Wizard</FullClassName>
</WizardExtension>
Esto, por lo que yo puedo decir, es así como se supone que debo hacerlo. ¿Qué está yendo mal exactamente? Parece que no puede encontrar el ensamblaje. ¿Hay algún otro paso que deba seguir para que el ensamblaje sea visible para las plantillas? El ensamblaje se despliega en la carpeta de extensión cuando está instalado (lo verifiqué), por lo que al menos está saliendo. ¿Hay algo especial que deba hacer a los archivos .vstemplate para decirles que busquen en la carpeta de extensiones frente al GAC? ¿Me perdí algo?
Tenga en cuenta que he encontrado varias páginas en Internet que indican que tengo que GAC el ensamblaje manualmente o con una secuencia de comandos. Sin embargo, pocos tenían mi escenario exacto (las plantillas de proyecto están referenciadas por un proyecto VISX, la mayoría de los ejemplos utilizan un proyecto regular exportado a través del asistente de plantillas de proyecto y tienen sus paquetes vertidos en la estructura de carpetas VISX). El único que encontré que coincidía con mi escenario fue un ejemplo de Microsoft. Traté de igualar eso, pero lamentablemente todavía no funciona. Traté de reubicar el proyecto que descargué para hacer referencia en esta pregunta, pero no puedo encontrarlo nuevamente.
El uso de scripts es la forma en que hemos hecho esto antes, pero quiero tratar de hacer las cosas un poco más claras usando paquetes VISX. Me gustaría evitar esto, pero si es obligatorio guiar el VISX para instalar la plantilla en GAC, puedo hacerlo.
Lo sentimos, este tomó mucho tiempo para volver a, que en realidad no veo una respuesta hasta después de haber solucionado el problema. Esto fue de hecho parte de este problema, aunque hubo algunos otros problemas de configuración (es decir, las referencias de proyectos deben agregarse a través de la interfaz de usuario, la edición manual de los archivos de configuración no funcionará por alguna razón). Estoy aceptando, ya que era el problema principal. –
Creo que puede poner cualquier información detallada para discusión, si lo desea. Al menos encuentro muchos problemas este año cuando hice el kit de inicio para nuestro producto de la compañía. –
Esto no me ayudó. Todo estaba funcionando bien y de repente comencé a obtener este error. Intenté reiniciar casi todo lo que estaba bajo mi control. Cualquier entrada es muy apreciada. – RDV