遇到代码片段问题

时间:2017-08-07 18:41:07

标签: c# xml visual-studio

您好我有这段代码片段在类上更快地写集属性,但我不知道为什么它只是在括号内的制表位不起作用,这里是片段的定义;

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets
    xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>Set de la clase de Negocio</Title>
      <Author>Jorge Torselli</Author>
      <Description>Establece el set modificado para el campo</Description>
      <Shortcut>set</Shortcut>
    </Header>
    <Snippet>
      <Declarations>
        <Literal>
          <ID>Nombre_set</ID>
          <ToolTip>Escribir el nombre del campo en cuestión</ToolTip>
        </Literal>
        <Literal>
          <ID>Tipo_dato</ID>
          <ToolTip>Escribir el tipo de dato</ToolTip>
        </Literal>
        <Literal>
          <ID>Nueva_asignacion</ID>
          <ToolTip>El tipo de dato y nombre que se le asignara</ToolTip>
        </Literal>
        <Literal>
          <ID>Nombre_campo</ID>
          <ToolTip>EL nombre del campo al que hace referencia = al que se le asigno</ToolTip>
        </Literal>
      </Declarations>
      <Code Language="CSharp">
        <![CDATA[public void set$Nombre_set$($Tipo_dato$ $Nueva_asignacion$) {this$Nombre_campo$ = $Nueva_asignacion$;}]]>
      </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

它是在Visual Studio 2015社区,标签停止它只在Nombre_set的第一个声明上工作,从Nombre_set跳转到Nombre_campo跳过声明Tipo_dato和Nueva_asignacion ......

任何建议......

1 个答案:

答案 0 :(得分:0)

我找到了解决它的方法,我需要一些标签并组织代码,这里是编辑和功能代码....

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>set</Title>
      <Shortcut>set</Shortcut>
      <Description>Fragmento de código para set personalizado</Description>
      <Author>Jorge Torselli</Author>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Declarations>
        <Literal>
          <ID>nombre</ID>
          <Default>nombre</Default>
          <ToolTip>Nombre del set</ToolTip>
        </Literal>
        <Literal>
          <ID>tipo</ID>
          <Default>int</Default>
          <ToolTip>Tipo de variable</ToolTip>
        </Literal>
        <Literal>
          <ID>variable</ID>
          <Default>x</Default>
          <ToolTip>Nombre de variable</ToolTip>
        </Literal>
        <Literal>
          <ID>campo</ID>
          <Default>y</Default>
          <ToolTip>Nombre de campo</ToolTip>
        </Literal>
      </Declarations>
      <Code Language="csharp">
        <![CDATA[Public void set$nombre$ ( $tipo$ $variable$ ) { this$campo$ = $variable$; } $end$]]>
    </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

我添加了SnippetType标记并将其放在Expansion中;这允许您将片段插入放置光标的位置。此片段类使visual studio了解该片段将用于生成类型定义,成员定义和公共代码构造函数。

我在变量中添加了默认值,因此您必须替换默认值,即使您使用的代码段几乎总是相同的,也可以添加,在必要时可以选择更改它

我添加了$ end $,以便在代码片段扩展后放置光标。

我还根据层次结构对带有缩进的标签代码进行了排序,以便更容易理解代码。

这是我找到刚才写的信息的链接......

https://msdn.microsoft.com/en-us/library/ms379562(v=vs.80).aspx