Cómo agregar un nombre para mostrar de un decorador en Visual Studio DSL (Lenguaje Específico de Dominio) Herramientas?

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

  •  09-06-2019
  •  | 
  •  

Pregunta

En mi DSL proyecto que tengo una forma con un número de decoradores que están vinculados a las propiedades de mi clase de dominio.Pero a pesar de ieach decorador tiene una propiedad DisplayName (ajustado a un significativo valor) no aparece en el generado DSL proyecto.(No he forgtten el uso de regenerar la t4 de archivos.)

¿Tengo que crear otro decorador para cada propiedad que sólo tiene el nombre para mostrar como un valor que yo desee mostrar o existe alguna otra manera que no puedo entender ahora?

¿Fue útil?

Solución

Supongo que por un nombre para mostrar para el decorador, que significa que usted desea que el elemento generado en la DSL a aparecer como "Ejemplo = a_value" donde a_value es el valor real y el Ejemplo es el nombre de la propiedad.

Lo he hecho con esto en el pasado para crear la segunda propiedad "ExampleDisplay" que no es navegable y es lo que el decorador realmente apunta.Yo, a continuación, establezca el Tipo de propiedad de la ExampleDisplay a "Calculado".Entonces usted necesidad de proporcionar el método que el toolkit intenta llamar a mostrar el decorador que usted puede hacer una clase parcial.

partial class ExampleElement
{
    string GetExampleDisplayValue()
    {
        return "Example : " + this.Example;
    }
}

Esto no es lo ideal ya que no se obtiene una buena manera de establecer la propiedad en la DSL diagrama usted tiene que utilizar la ventana de propiedades.(Hay veces retrasos desde la ventana de propiedades, a menos que usted gancho en la actualización de la propiedad subyacente, también).Obtención de la mancha edición en la interfaz gráfica de usuario que DSL real toolkit ¿tal vez sea posible, pero no he encontrado la manera.

Tal vez vale la pena preguntar VSX foros si aún no lo ha hecho ya.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top