2011-05-10 16 views
5

Me gustaría agregar un editor a Visual Studio 2010, que debería ser similar al que obtienes para Entity Framework, es decir, tienes un diseñador visual que guarda su propia configuración a su propio archivo y luego generar código a partir de eso.Tutorial para escribir el plugin de generación de código para Visual Studio 2010

Así que los dos aspectos implican para esta sería una representación visual de una extensión de archivo específico y la segunda es la generación de código (o se debe generar el código como el archivo se puede modificar o sólo en una acumulación?)

He hecho algo de surf pero no pude obtener ningún recurso sobre cómo hacer estas cosas específicas (especialmente la parte de generación de código), cualquier apunte en la dirección correcta con los recursos podría ser apreciado.

Respuesta

5

de visualización de Microsoft y Modelado SDK - Idiomas de dominio-específicas:

http://msdn.microsoft.com/en-us/library/bb126259.aspx

Citando del sitio:

uso de la visualización de Visual Studio y Modelado SDK (VMSDK), puede cr Eate potentes herramientas de desarrollo basadas en modelos que puede integrar en Visual Studio. Como ejemplo, las herramientas UML se crean usando VMSDK. De la misma manera, puede crear una o más definiciones de modelo e integrarlas en un conjunto de herramientas.

En el corazón de VMSDK está la definición de un modelo que usted crea para representar conceptos en su área comercial. Puede rodear el modelo con una variedad de herramientas, como una vista de diagrama, la capacidad de generar código y otros artefactos, comandos para transformar el modelo y la capacidad de interactuar con código y otros objetos en Visual Studio. A medida que desarrolla el modelo, puede combinarlo con otros modelos y herramientas para formar un poderoso conjunto de herramientas centrado en su desarrollo.

VMSDK le permite desarrollar un modelo rápidamente en la forma de un lenguaje específico de dominio (DSL). Comienza utilizando un editor especializado para definir un esquema o sintaxis abstracta junto con una notación gráfica. A partir de esta definición, VMSDK genera:

A model implementation with a strongly-typed API that runs in a transaction-based store. 

A tree-based explorer. 

A graphical editor in which users can view the model or parts of it that you define. 

Serialization methods that save your models in readable XML. 

Facilities for generating program code and other artifacts using text templating. 

Puede personalizar y ampliar todas estas funciones. Sus extensiones están integradas de tal manera que aún puede actualizar la definición DSL y volver a generar las características sin perder sus extensiones.

+1

El Marco Específico de Dominio que usamos específicamente para esto, ¿cuál es el voto negativo? –

+0

parece prometedor, solo estoy viendo el [Tech Ed Video] (http: //channel9.msdn.com/Events/TechEd/Europe/2010/DEV210) para ver si cumplirá mi propósito. – Cornelius

+1

+1 en su respuesta, no puedo entender por qué en la tierra alguien le dio un voto negativo. – Nock

0

Para la generación de código que voy a sugerir al lago un vistazo en code DOM model.

No sé nada sobre el desarrollo plugin de VS, pero creo que esta página sería útil (en caso de que no vimos antes) - Visual Studio plug-ins development, first steps

+0

'No sé nada sobre el desarrollo de plugins VS', ¿por qué respondes entonces? – jgauffin

+0

mi respuesta no es solo acerca de los complementos) –

Cuestiones relacionadas