방법: 대체를 사용하여 새 코드 조각 만들기
코드 조각의 부분을 다른 사람이 삽입하여 대체하도록 할 수 있습니다. 특정 변수나 개체를 참조하려는 경우와 사용자가 변수나 개체를 자신의 프로젝트에 있는 변수나 개체로 대체하도록 하려는 경우 이 방법이 유용합니다. IntelliSense 코드 조각은 Literal 및 Object 요소에 이 기능을 제공합니다.
일단 코드 조각이 삽입된 후에는 대체 항목을 클릭하고 Ctrl+스페이스바를 눌러 코드에서 가능한 모든 대체 개체에 액세스할 수 있습니다.
리터럴 대체 만들기
Literal 요소는 코드 조각에 완전히 포함되어 있으나 코드에 삽입된 후 사용자 지정될 대체 코드 부분을 식별하는 데 사용됩니다. 예를 들어, 리터럴 문자열, 숫자 값 및 일부 변수 이름은 리터럴로 선언되어야 합니다.
이 프로시저에서는 방법: 기본 코드 조각 만들기 항목에 설명된 프로시저를 따르고 있다고 가정합니다.
리터럴 대체를 만들려면
코드 조각의 Snippet 요소를 찾습니다.
Declarations 요소를 Snippet 요소의 자식으로 추가합니다. Declarations 요소는 대체 선언을 그룹화하는 데 사용됩니다.
Literal 요소를 Declarations 요소의 자식으로 추가합니다. Literal 요소는 개별 리터럴을 지정합니다. 코드 조각에 둘 이상의 리터럴 대체가 있을 수 있습니다.
ID 요소를 Literal 요소의 자식으로 추가합니다. 이 요소의 텍스트 값은 Code 요소에서 리터럴을 참조하는 데 사용되는 이름을 지정합니다.
Default 요소를 Literal 요소의 자식으로 추가합니다. Default 요소의 텍스트 값은 코드 조각이 삽입될 때 리터럴의 기본값을 지정합니다.
개체 대체 만들기
Object 요소는 코드 조각에서 필요하지만 코드 조각 자체의 외부에서 정의될 항목을 식별하는 데 사용됩니다. 예를 들어, Windows Forms 컨트롤, ASP.NET 컨트롤, 개체 인스턴스 및 형식 인스턴스는 개체로 선언되어야 합니다. 개체를 선언하려면 형식이 지정되어 있어야 합니다.
이 프로시저에서는 방법: 기본 코드 조각 만들기 항목에 설명된 프로시저를 따른다고 가정합니다.
개체 대체를 만들려면
코드 조각의 Snippet 요소를 찾습니다.
Declarations 요소를 Snippet 요소의 자식으로 추가합니다. Declarations 요소는 대체 선언을 그룹화하는 데 사용됩니다.
Object 요소를 Declarations 요소의 자식으로 추가합니다. Object 요소는 개별 개체를 지정합니다. 코드 조각에 둘 이상의 개체 대체가 있을 수 있습니다.
ID 요소를 Object 요소의 자식으로 추가합니다. 이 요소의 텍스트 값은 Code 요소에서 개체를 참조하는 데 사용되는 이름을 지정합니다.
Type 요소를 Object 요소의 자식으로 추가합니다. Default 요소의 텍스트 값은 개체 형식을 지정합니다.
Default 요소를 Object 요소의 자식으로 추가합니다. Default 요소의 텍스트 값은 코드 조각이 삽입될 때 개체의 기본값을 지정합니다.
대체 항목 참조
리터럴과 개체를 만들었으므로 코드 조각에 의해 삽입될 리터럴과 개체를 코드에서 사용할 수 있는 방법이 있어야 합니다. Declarations 요소에 선언한 리터럴과 개체는 리터럴이나 개체의 ID 요소에 있는 값의 시작과 끝에 $ 기호를 넣어 참조합니다.
코드 요소에서 리터럴이나 개체를 참조하려면
- 리터럴이나 개체의 ID 요소 값의 시작과 끝에 $ 기호를 넣습니다. 예를 들어, 리터럴의 ID 요소 값이 MyID이면 Code 요소에서 $MyID$를 사용하여 해당 리터럴을 참조합니다.
예제
다음 코드 예제에서는 Literal 및 Object 요소가 모두 있는 코드 조각을 보여 줍니다. SqlConnString 리터럴은 Code 요소에서 $SqlConnString$을 사용하여 참조되고 SqlConnection 개체는 $SqlConnection$을 사용하여 참조됩니다.
<CodeSnippets xmlns="https://schemas.microsoft.com/VisualStudio/CodeSnippet">
<CodeSnippet>
<Header>
<!-- Add Header information here -->
</Header>
<Snippet>
<!-- Add additional Snippet information here -->
<Declarations>
<Literal>
<ID>SqlConnString</ID>
<ToolTip>Replace with a SQL connection string.</ToolTip>
<Default>"SQL connection string"</Default>
</Literal>
<Object>
<ID>SqlConnection</ID>
<Type>System.Data.SqlClient.SqlConnection</Type>
<ToolTip>Replace with a connection object in your application.</ToolTip>
<Default>dcConnection</Default>
</Object>
</Declarations>
<Code Language="CSharp">
<![CDATA[
daCustomers = new SqlClient.SqlDataAdapter();
selectCommand = new SqlClient.SqlCommand($SqlConnString$);
daCustomers.SelectCommand = selectCommand;
daCustomers.SelectCommand.Connection = $SqlConnection$;
]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
참고 항목
작업
참조
Declarations 요소(IntelliSense 코드 조각)
Literal 요소(IntelliSense 코드 조각)
ToolTip 요소(IntelliSense 코드 조각)