문제

스 니펫이 생성하는 코드에 사용될 때 코드 스 니펫 리터링이 어떻게 렌더링되는지 변경할 수있는 방법이 있습니까?

구체적으로 나는 say, $ propertyname $라는 리터럴을 가질 수 있는지 알고 싶습니다. 그런 다음 스 니펫 엔진을 가져와 첫 번째 문자가 소문자로 만들기 "_ $ propertyname $를 렌더링합니다.

나는 r#을 감당할 수 없다. 도와주세요 :)

도움이 되었습니까?

해결책

불행히도 방법이없는 것 같습니다. 스 니펫은 놀랍도록 제한된 지원을 제공합니다 변환 기능 보시다시피.

VS 표준 솔루션을 고수해야합니다. VS 표준 솔루션은 두 리터럴을 작성하는 것입니다. 하나는 속성 이름에, 다른 하나는 멤버 변수 이름입니다.

다른 팁

"수정"은 이름 지정 또는 멤버 변수에서 접두사를 사용하는 것일 수 있습니다.

string m_$name$;
string $name$
{
 get{return m_$name$;}
 set{m_$name$=value;}
};

위 첫 글자, 속성 이름, 하단 첫 글자를 입력 할 수 있습니다. 이 스 니펫을 사용해보십시오.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <Header>
    <Title>Notifiable Property</Title>
    <Author>Nikolay Makhonin</Author>
    <Shortcut>propn</Shortcut>
    <Description>Property With in Built Property Changed method implementation.</Description>
    <SnippetTypes>
      <SnippetType>SurroundsWith</SnippetType>
      <SnippetType>Expansion</SnippetType>
    </SnippetTypes>
  </Header>
  <Snippet>
    <Declarations>
        <Literal>
            <ID>Type</ID>
            <Default>Type</Default>
        </Literal>
        <Literal>
            <ID>P</ID>
            <Default>P</Default>
        </Literal>
        <Literal>
            <ID>roperty</ID>
            <Default>ropertyName</Default>
        </Literal>
        <Literal>
            <ID>p</ID>
            <Default>p</Default>
        </Literal>
        <Literal>
            <ID>Ownerclass</ID>
            <ToolTip>The owning class of this Property.</ToolTip>
            <Function>ClassName()</Function>
            <Default>Ownerclass</Default>
        </Literal>
    </Declarations>
    <Code Language="CSharp">
      <![CDATA[#region $P$$roperty$

        private Field<$Type$> _$p$$roperty$;
        public static readonly string $P$$roperty$PropertyName = GetPropertyName(() => (($Ownerclass$)null).$P$$roperty$);
        public $Type$ $P$$roperty$
        {
            get { return _$p$$roperty$; }
            set { Set(ref _$p$$roperty$, value); }
        }

        #endregion

]]>
    </Code>
  </Snippet>
</CodeSnippet>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top