visual tools studio serial proyectos plantillas para license form for descargar visual-studio hyperlink project-template

visual-studio - tools - proyectos en c# windows form



¿Cómo creo una plantilla de proyecto de Visual Studio que incluya archivos vinculados? (3)

Microsoft ha confirmado que este es un error con el modelo de extensibilidad y las plantillas de proyecto. Me las arreglé para solucionar esto usando IWizard. Agregué el siguiente código en el método RunFinished de mi implementación de IWizard:

//Get linked file directory string coreDir = Path.GetDirectoryName(MyProject.FullName); //Data folder ProjectItem propertiesProjectItem = slSharedProject.ProjectItems.Cast<ProjectItem>().Where(p => p.Name == "Data").First(); propertiesProjectItem.ProjectItems.AddFromFile(coreDir + @"/Service/TheFileIWantToLink.cs");

Este código enlaza en una copia del archivo TheFileIWantToLink.cs a mi proyecto compartido de Silverlight (slSharedProject).

En Visual Studio 2010, quiero crear una plantilla de proyecto que incluya enlaces a dos archivos que deberían existir en el sistema. Uno de ellos es un archivo AssemblyInfo.cs común. Otro es el archivo de clave de nombre seguro (* .snk).

Necesito que estas referencias sean relativas , porque el espacio de trabajo de cada desarrollador se configurará de manera diferente. ¿Es posible que la plantilla del proyecto de alguna manera descubra dónde residen estos archivos en el entorno de cada desarrollador?

Al leer sobre plantillas, suena como si fueran bastante estáticas, así que me pregunto si se pueden hacer trucos para hacer algo como esto. Si nada más, puedo agregar referencias falsas que causarán errores de compilación y forzar al desarrollador a conectar estos archivos. Pero si puedo hacerlo por ellos, sería mejor.


Puede intentar integrar un asistente en su plantilla de proyecto y establecer las rutas a los archivos vinculados. Si recuerdo bien, no tienes que crear una interfaz de usuario; solo tiene que especificar los reemplazos correctos en el reemplazo de artículos y VS reemplazará los valores en su archivo de plantilla. Ver this o this para obtener más información.


Debe establecer la propiedad CreateInPlace en true en la vstemplate. La documentation dice

Especifica si se debe crear el proyecto y realizar la sustitución de parámetros en la ubicación especificada, o realizar la sustitución de parámetros en una ubicación temporal y luego guardar el proyecto en la ubicación especificada.

Si desea que las rutas relativas funcionen, necesita que el reemplazo del parámetro se produzca en el lugar donde está creando el proyecto, no en una ubicación temporal .