2015-09-23 3 views
0

Creating Custom Code Snippet не очень помогло мне. Мой вопрос специфичен для моего требования.Создание пользовательского фрагмента кода в VS2013 для C#

Я хочу написать собственный фрагмент для моей собственности. Ситуация, как правило, когда мы пишем prop и двойной вкладке мы получим вывод

public int MyProperty { get; set; } 

и когда мы пишем propfull мы получаем

private int myVar; 

public int MyProperty 
{ 
    get { return myVar;} 
    set { myVar = value;} 
} 

как только мы изменим имя переменной автоматически отражает везде

Теперь я хочу, чтобы написать свой собственный фрагмент кода, как этот

public int MyProperty 
{ 
    get 
    { 
     return GetValue(() => MyProperty); 
    } 
    set 
    { 
     SetValue(() => MyProperty, value); 
    } 
} 

Я получил Creating a Code Snippet от MSDN

Это то, что я попытался

<?xml version="1.0" encoding="utf-8"?> 
<CodeSnippets 
    xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
    <CodeSnippet Format="1.0.0"> 
     <Header> 
      <Title>propmy</Title> 
     </Header> 
     <Snippet> 
      <Code Language="csharp"><![CDATA[public int MyProperty 
     { 
       get { return GetValue(() => MyProperty); } 
       set { SetValue(() => MyProperty , value); } 
     } 
$end$]]> 
      </Code> 
     </Snippet> 
    </CodeSnippet> 
</CodeSnippets> 

Но когда я пишу propmy в VS IDE ничего не отображается в списке и truns, чтобы поддержать в первом а на второй вкладке создается свойство, подобное обычным. Я не знаю, как это сделать?

ответ

1

Вы можете попробовать добавить

<Shortcut>propmy</Shortcut> 

в разделе заголовка вашего XML. Я уверен, что это будет делать трюк

Edit:

Я создал полный XML для вас. Просто скопируйте пасту, и она вам поможет.

<?xml version="1.0" encoding="utf-8" ?> 
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
    <CodeSnippet Format="1.0.0"> 
     <Header> 
      <Title>propmy</Title> 
      <Shortcut>propmy</Shortcut> 
      <Description>Automatically implemented property</Description> 
      <Author>BugFree</Author> 
      <SnippetTypes> 
       <SnippetType>Expansion</SnippetType> 
      </SnippetTypes> 
     </Header> 
     <Snippet> 
      <Declarations> 
       <Literal> 
        <ID>type</ID> 
        <ToolTip>Property type</ToolTip> 
        <Default>int</Default> 
       </Literal> 
       <Literal> 
        <ID>property</ID> 
        <ToolTip>Property name</ToolTip> 
        <Default>MyProperty</Default> 
       </Literal> 
      </Declarations> 
      <Code Language="csharp"><![CDATA[public $type$ $property$ 
     { 
       get { return GetValue(() => $property$); } 
       set { SetValue(() => $property$ , value); } 
     } 
$end$]]> 
      </Code> 
     </Snippet> 
    </CodeSnippet> 
</CodeSnippets> 
Смежные вопросы