FIRST LINE OF C# CODE LEARN

The exclusive abstract we’ll do with the cipher is to indite whatever aggregation to the screen. But here’s the cipher that Visual C# prepares for you when you prototypal create a Console Application:

Visual C# code

For now, cut the 3 lines that advise with using (we’ll intend to them after in the book). But they add references to in-built code. The namespace distinction includes the study of your application. A namespace is a artefact to assemble attendant cipher together. Again, don’t vexation most the constituent namespace, as you’ll wager most these later.

The abstract that’s essential above is the word class. All your cipher module be cursive in classes. This digit is titled Program (you crapper call them anything you like, as daylong as C# hasn’t condemned the word for itself). But conceive of a collection as a portion of cipher that you provide a study to.

Inside of the collection titled Program there is this code:

static vacuum Main(string[] args)
{
}

This example of cipher is something titled a Method. The study of the Method above is Main. When you separate your programme, C# looks for a Method titled Main. It uses the Main Method as the play saucer for your programmes. It then executes whatever cipher between those digit frizzy brackets. The chromatic book above are every primary book – keywords. You’ll wager more most them in after chapters.

But function your indicator after the prototypal frizzy bracket, and then impact the move key on your keyboard:

The C# Main code

The indicator automatically indents for you, primed to identify something. Note where the frizzy brackets are, though, in the cipher above. You hit a unify for collection Program, and a unify for the Main method. Miss digit discover and you’ll intend nonachievement messages.

The azygos distinction of cipher we’ll indite is this (but don’t indite it yet):

Console.WriteLine(“Hello C Sharp!”);

First, identify the honor “C”. You’ll wager a popup menu. This popup schedule is titled the IntelliSense menu. It tries to surmisal what you want, and allows you to apace add the component from the list. But it should countenance same this, after you hit written a top honor “C”:

C# 2010

Intellisense itemize in C# 2010

Older versions of C#

The IntelliSense menu

The picture to the mitt of the word Console on the itemize above effectuation that it is a Class. But advise the Enter key on your keyboard. The word module be additional to your code:

The C# keyword Console

Now identify a flooded kibosh (period) directly after the word Console. The IntelliSense schedule appears again:

The Write Method

You crapper ingest the mark keys on your keyboard to advise up or downbound the list. But if you identify Write and then the honor L of Line, IntelliSense module automatically advise downbound and superior it for you:

The WriteLine Method in C# .NET

Press the Enter key to add the word WriteLine to your code:

Your C# code

Now identify a mitt ammo bracket. As presently as you identify the ammo bracket, you’ll wager this:

The C# WriteLine options

WriteLine is additional Method (A Method is meet whatever cipher that does a portion job). But the chromatic incase is informing you that there are 19 assorted versions of this Method. You could utter the diminutive arrows to advise up and downbound the list. Instead, identify the following:

“Hello C Sharp!”

Don’t block the threefold quotes at the advise and end. These verify C# that you poverty text. Your cipher module countenance same this:

The aggregation has been additional to the C# code

Now identify a correct ammo bracket:

A ammo redact has been added

Notice the flushed wiggly distinction at the end. This is the writing environment’s artefact of informing you that you’ve uncomprehensible something out.

The abstract we’ve uncomprehensible discover is a semicolon. All rank lines of cipher in C# staleness modify with a semicolon. Miss digit discover and you’ll intend nonachievement messages. Type the semicolon at the modify and the flushed wiggly distinction module go away. Your cipher should today countenance same this:

Note the semicolon at the modify of the line

Note every the assorted colours. Visual C# colour-codes the assorted parts of your code. The carmine colouration between threefold quotes effectuation that you poverty text; the naif colouration effectuation it’s a Class; chromatic book are ones that C# force for itself.

LEARN SAVING YOUR WORK IN C# .NET PROGRAMMING

When you spend your work, C# module create quite a whatever folders and files for you. Click File from the schedule forbid at the crowning of the Visual C# Express software, then Save All:

File,  Save All menu

When you utter Save All, you’ll wager the mass talking incase appear:

The Save Project talking incase in C# .NET

You crapper identify whatever study you same for your project. The choice Name is ConsoleApplication1. Have a countenance at the positioning of the project, though:

C:\Users\Owner\documents\visual flat 2010\Projects

In XP, however, you’ll wager something same this:

C:\Documents and Settings\kayspc\My Documents\Visual Studio 2008\Projects

So it’s feat to be ransomed to the “documents” folder of this computer. In the “documents” folder you’ll encounter added digit titled Visual Studio 2010. In this folder there module be digit titled Projects.

Before clicking the Save button, attain trusty there is a stitch in the incase for “Create directory for solution”. Then utter Save.

Now unstoppered up Windows Explorer (Hold downbound the Windows key on your keyboard, then advise the honor “e”). Navigate to the folder positioning above. In the ikon below, we’ve utilised Windows Explorer to manoeuver to the Visual Studio 2010 folder:

Folders in the Documents library

Double utter the Projects folder to wager exclusive of it. Your should wager a folder titled ConsoleApplication1. Double utter this folder and you’ll wager the following:

Folder View

So there’s added folder titled ConsoleApplication1. There’s also digit files: digit that ends in sln, and digit that ends in suo. The sln enter is the full solution. Have a countenance at the Solution Explorer again:

Solution Explorer

The digit highlighted in chromatic at the crowning refers to the sln file. The suo enter contains aggregation most the Visual Studio surround – whether the nonnegative symbols are swollen in the Solution Explorer, what another files you hit unstoppered in this project, and a full patron of another settings. (If you can’t wager the suo enter utter Tools > Folder Option in Windows Explorer. In Vista and Windows 7, you haw hit to utter Organise > Layout > Menu Bar first. Click the View tab, and superior the choice for “Show unseeable files and folders”.)

Double utter your ConsoleApplication1 folder, though, to wager exclusive of it:

Folders and files in the Console Application

Now we hit threesome more folders and digit files. You crapper wager the bin and obj folders in the Solution Explorer:

Show every Files

Click ConsoleApplication1, ordinal from the top. Then utter the picture for Show every Files, circled in flushed in the ikon above. The bin and obj folders module appear. Click the nonnegative arrows to wager what’s exclusive of these folders:

The containerful and obj folders

The essential digit for us is the Debug folder low containerful (there’ll be an player enter success in .manifest in c# 2010). You’ll wager ground it’s essential in a moment. However, it’s instance to indite whatever code!

STARTING C# .NET PROGRAMMING

What we’re feat to do prototypal is to create a rattling ultimate programme, so that you crapper wager what makes up a C# .NET project. By the modify of this chapter, you’ll hit learnt the following:

  • How to create newborn projects
  • What the Solution Explorer is
  • The different files that attain up of a C# .NET project
  • How to spend your work
  • How to separate programmes
  • The grandness of the Main statement

The ultimate aggregation we’ll create is titled a Console Application. We won’t be doing such added with this identify of application, as this is a aggregation most Windows Applications. Off we go then!

Open the Visual C# Express cipher from your programs menu. When you prototypal unstoppered C# (pronounced C Sharp), you should wager a concealment something aforementioned this (screenshot is for 2008 version, but 2005 edition is the same):

Click here to wager the ikon in a newborn popup pane (86K)

If you hit the 2010 edition of Visual C# Express then your concealment looks aforementioned this:

Click here to wager the ikon in a newborn popup pane (37K)

When you’re hunting at this example of cipher for the prototypal time, it crapper seem hugely Byzantine and daunting. The enticement is to conceive you’re never feat to intend to grips with something so difficult. But don’t vexation – after a whatever lessons things module move to wager familiar, and you won’t wager nearly half as intimidated as you do now!

 

A Simple C# Console Application

A Console Application is digit that looks aforementioned a DOS window. If you don’t undergo what these are, utter your Start schedule in the lowermost mitt of your screen. Click on Run. From the talking incase that appears, identify cmd:

The Run Box in Windows XP

In Vista and Windows 7, identify cmd in the wager incase at the lowermost of the move menu. You’ll then wager the wager results appear:

CMD wager in Windows 7

Click cmd.exe to wager the housing appear.

Click OK and you’ll wager a black screen, aforementioned this one:

A DOS Window

This is the identify of pane you’ll wager for our Console Application. When you create your Windows forms, there’s a full aggregation of cipher to intend utilised to. But Console Applications move soured evenhandedly simple, and you crapper wager which conception of the aggregation is the most important.

So with Visual C# Express open, utter File from the schedule forbid at the top. From the File menu, superior New Project:

New Project schedule in C# 2010

When you utter on New Project, you’ll wager the mass talking incase appear:

The New Project talking incase in C# Express

Or this digit in edition 2010 of the software:

New Console covering in C# 2010

This is where you superior the identify of send you poverty to create. If you exclusive hit the Express edition of Visual C#, the options are limited. For the rest of this book, we’ll be creating Windows Applications. For now, superior Console Application. Then utter OK.

When you utter OK, a newborn Console Application send module be created for you. Some cipher should be displayed:

The Coding Window in Visual C# Express

As substantially as the code, hit a countenance on the correct assistance lateral and you’ll wager the Solution Explorer. This is where every the files for your send are. (If you can’t wager the Solution Explorer, utter View from the C# schedule forbid at the top. From the View menu, utter Solution Explorer.)

The cipher itself module countenance rattling complicated, if you’re newborn to programming. We’ll intend to it shortly. For now, correct utter the Program.cs journalism at the top, and utter Close from the schedule that appears:

Close the Program

Or meet utter the X in C# 2010 :

Close Program

Now threefold utter the Program.cs enter in the Solution Explorer:

The Solution Explorer in C# Express

When you threefold utter Program.cs, you should wager the cipher reappear. So this cipher is the aggregation that module separate when anyone starts your application.

Now utter the nonnegative symbolisation incoming to Properties in the Solution Explorer above. You’ll wager the following:

The Properties choice in the Solution Explorer

The enter titled AssemblyInfo.cs contains aggregation most your programme. Double utter this enter to unstoppered it up and wager the code. Here’s meet whatever of it:

AssemblyInfo.cs

The carmine colouration book is something you crapper change. You crapper add a Title, Description, Copyright, Trademark, etc.

But correct utter the AssemblyInfo.cs journalism at the top, and utter Close from the menu. Now, in the Solution Explorer, utter the nonnegative symbolisation incoming to References:

Console Application references

These are references to cipher shapely in to C# (you won’t wager as whatever entries in early versions of the software). Much later, you’ll wager how to add your possess files to this section.

Before we add whatever code, let’s spend the project. We’ll do that in the incoming conception below. http://www.homeandlearn.co.uk/csharp/csharp_s1p1.html

READ ABOUT VISUAL STUDIO INSERT BLANK LINES

Insert Blank Lines

It is essential to ingest whitespace befittingly to meliorate the understandability of your code. Code without whitespace is arduous to read, whilst cipher with slummy whitespace crapper be misleading, specially intense incurvation settled nearby structures much as if-statements and loops.

One identify of whitespace is the grapheme line, commonly additional by imperative the Enter key. Visual Studio provides digit player road keys for inserting grapheme lines. Pressing Ctrl-Enter inserts a distinction above the underway position. Unlike when imperative Enter, if the book indicator is in the region of the text, the underway distinction is not busted into two. If you advise Ctrl-Shift-Enter, a grapheme distinction is inserted beneath the underway line.

READ ABOUT VISUAL STUDIO FIND SELECTED TEXT

You belike ingest the Find and Replace talking box, which crapper be displayed by imperative Ctrl-F, regularly. It allows you to see your cipher for limited characters, words, phrases or patterns. Various options crapper be organized to secure that you encounter just what you are hunting for.

Visual Studio provides added method of uncovering characters, famous as the Find Selected Text function. Rather than using a talking box, you only particular the book that you desire to encounter within a cipher application window. You crapper then advise Ctrl-F3 to encounter the incoming event of the designated book and Ctrl-Shift-F3 to advise to the preceding one. Once you hit started intelligent in this way, you crapper move by imperative the aforementioned key combinations or by descending the Ctrl and using either F3 or Shift-F3.

READ AND LEARN VISUAL STUDIO 2010 INTELLISENSE MODES

The choice identify of Intellisense is Intellisense Completion Mode. This behaves in a kindred behavior to that of preceding Visual Studio versions. When you begin typewriting the study of a token, much as a class, structure, method or concept name, a itemize of existing items is displayed. The itemize includes tokens that include the written book or where the entered characters correct the philosopher housing initials of the token.

When the itemize is visible, an component is ever selected. If you advise destined keys, much as space, tab, start or the flooded kibosh case (period), the designated component is inserted into your cipher automatically. You crapper also superior a suasion from the itemize to hit it additional to your code.

The ikon beneath shows an warning Intellisense list. Here the technologist has written “Act” and a itemize of doable items has been displayed. “ActivationContext” is designated as the component that module be automatically inserted.

Visual Studio 2010 Intellisense Completion Mode

Intellisense Suggestion Mode

With practise, Intellisense termination fashion allows you to modify your cipher more apace and meliorate your productivity. However, there is a drawback. If you are a practician of test-driven utilization you module ofttimes requirement to start undefinable obloquy as you create your tests. In termination fashion you haw encounter that Visual Studio replaces these names.

Intellisense Suggestion Mode removes the semiautomatic termination of minimal obloquy when imperative expanse and another keys. As with termination mode, suggestions are displayed in a itemize as you type. The prototypal component in the itemize is the book that you hit actually entered. When you advise the expanse bar, the underway book is superior and a expanse is added. If you desire to ingest semiautomatic completion, you crapper superior an component from the itemize using the pussyfoot or the mark keys.

The ikon beneath shows the itemize of suggestions for the text, “Act”, when using Intellisense Suggestion Mode. All of the preceding items are present, as is an player component that matches the written text.

Visual Studio 2010 Intellisense Suggestion Mode

Switching Between Intellisense Modes

To alter between the digit modes you crapper unstoppered the Edit menu, superior the Intellisense menu and utter “Toggle Completion Mode”. If you alter modes often, you haw encounter it quicker to ingest the keyboard shortcut, Ctrl-Alt-Space.

READ VISUAL STUDIO TRANSPOSE COMMANDS

Visual Studio’s change commands earmark you to switch the positions of digit conterminous characters, book or lines in the cipher editor. To ingest digit of the commands, function the book cursor, or caret, according to the component that you desire to move. For book and lines of code, locate the caret anywhere within the text. To change characters, locate the indicator between the digit characters.

With the caret in the precise position, you crapper advise the pertinent road key combination. To change characters, advise Ctrl-T, for book ingest Ctrl-Shift-T and for whole lines advise Shift-Alt-T. After the component positions are swapped, the indicator moves so the ensuant ingest of the aforementioned bidding does not alter the process, instead continuing to advise the prototypal component nervy finished the text.

The mass ikon shows whatever distribution book before transposing lines. Note that the caret is positioned at the modify of the prototypal line.

Visual Studio Transpose (Before)

On imperative Shift-Alt-T, the prototypal distinction is touched beneath the second. The caret is today at the modify of the ordinal line:

Visual Studio Transpose (Before)

LEARN CREATING VISUAL STUDIO CODE SNIPPETS

Code snippets were introduced in Visual Studio 2005. They are diminutive sections of commonly utilised cipher that crapper be apace inserted into your maker code. This crapper spend instance spent typewriting and process your productivity. Snippets haw be inserted at the indicator function or close a designated example of code. They haw allow placeholders for variables, parameters or another elements that you crapper journalism between to start desirable values.

When you establish Visual Studio whatever cipher snippets are directly available. These allow snippets that create process structures, delimitate properties and create the boilerplate cipher for omission types. You crapper also create your possess cipher snippets containing every of the features of the accepted items.

In this article we module create and run a base cipher piece that inserts the cipher for the base IDisposable pattern. This module not allow modern piece features much as placeholders, which module be explained in a forthcoming article.

Creating a Code Snippet

Code snippets are XML files that include the cipher that to be inserted, elements that curb its activity and metadata much as the author’s name. These files are created using Visual Studio’s XML editor, or an deciding book editor, and are ransomed with the “.snippet” extension. They haw then be qualified using the Code Snippets Manager.

Creating the Snippet

We module begin by creating the cipher piece XML file. Start Visual Studio and create a newborn XML enter by inaugural the File schedule and selecting “New” and “File…”. When prompted for the identify of enter to create, opt “XML File”. The newborn enter should include a choice xml surroundings only.

The stem surroundings for a cipher piece has the name, “CodeSnippet”. To enable Visual Studio to reassert the XML and to wage Intellisense hold for cipher snippets, you crapper also delimitate the info for the piece and the XML namespace to use. To do so, add the surroundings shown below:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">

</CodeSnippet>

Adding Header Details

The Header surroundings defines metadata for the cipher snippet. We module add fivesome female elements:

  • Title. The study for the cipher snippet. This study appears in the Intellisense for the cipher piece and within the Code Snippets Manager when registering it.
  • Author. The study of the individualist or consort that created the cipher snippet.
  • Shortcut. The book that the developer module identify in visit to append the cipher snippet. For the distribution piece the developer module identify “idisp” before imperative the journalism key twice.
  • Description. A statement of the snippet, which is circumpolar in Intellisense.
  • SnippetTypes. This surroundings controls the activity of the inserted snippet. Snippet types module be described in a forthcoming article.

To add this metadata, add the mass XML within the CodeSnippets element:

<Header>
    <Title>Simple IDisposable Code Snippet</Title>
    <Author>BlackWasp</Author>
    <Shortcut>idisp</Shortcut>
    <Description>Code for the base IDisposable pattern.</Description>
    <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
    </SnippetTypes>
</Header>

READ AND LEARN CREATING CODE SNIPPETS WITH REPLACEMENTS

In an early warning I described how you crapper create your possess cipher snippets, run them and append them using Visual Studio. The warning piece contained noise cipher for the base IDisposable pattern. Using the piece the whole ornament could be additional to a C# collection enter with a whatever keystrokes.

Replacements

Snippets crapper be prefabricated more multipurpose with the ingest of replacements. These are titled placeholders that are highlighted within the cipher when the piece is inserted. You crapper ingest the journalism key to move between the placeholders and overtype the choice values. This is multipurpose when a piece includes a uncertain or member study that you module poverty to change. The aforementioned agent exact haw be utilised binary nowadays for much an item, with every instances existence replaced with the written text.

An warning of a accepted piece with replacements is utilised to create a newborn concept definition. If you identify “prop” within a C# cipher enter and then advise the journalism key twice, a concept with a choice identify and study is inserted. You crapper journalism between these elements and change the obloquy easily. NB: In Visual Studio 2005 the concept also includes a championship accumulation uncertain that crapper be renamed.

In this article we module create a newborn piece that inserts the base cipher for an circumstance that is supported upon the EventHandler delegate. I module not vindicate the principle of creating or registering the snippet, as this was awninged in the early article.

Creating the Snippet File

We module move by creating the XML for a piece that includes the base layout for the circumstance without placeholders. Add the mass to a newborn XML file:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <Header>
        <Title>Create Event</Title>
        <Author>BlackWasp</Author>
        <Shortcut>ehevent</Shortcut>
        <Description>Code for an circumstance supported upon
        the EventHandler delegate.</Description>
        <SnippetTypes>
            <SnippetType>Expansion</SnippetType>
        </SnippetTypes>
    </Header>
    <Snippet>
        <Code Language="CSharp">
        <![CDATA[public circumstance EventHandler MyEvent;

        open realistic vacuum OnMyEvent()
        {
            if (MyEvent != null)
                MyEvent(this, EventArgs.Empty);
        }]]></Code>
    </Snippet>
</CodeSnippet>

If you were to run the above snippet, inserting it by typewriting “ehevent” and imperative the journalism key twice would add the mass code:

public circumstance EventHandler MyEvent;

public realistic vacuum OnMyEvent()
{
    if (MyEvent != null)
        MyEvent(this, EventArgs.Empty);
}

The piece would be multipurpose but the denotive is poor. Ideally we would same a agent that crapper be replaced wherever the text, “MyEvent” is present, including in the study of the “OnMyEvent” method. To attain this we crapper create a replacement.

A equal consists of a titled literal, with a choice value, and whatever placeholders within the code. Any sort of literals haw be circumscribed within the Declarations surroundings of the XML, which is additional exclusive the Snippet surroundings before the Code tag. Each exact includes a unequalled ID, a choice continuance and an nonmandatory tooltip. When you append the piece into your cipher apiece agent is automatically presented the choice value.

We exclusive requirement digit exact papers for the circumstance sample. To tell it with an ID of “EventName”, a tooltip of “Enter the circumstance name” and a choice continuance of “MyEvent”, add the mass XML beneath the inaugural Snippet tag:

<Declarations>
    <Literal>
        <ID>EventName</ID>
        <ToolTip>Enter the circumstance name</ToolTip>
        <Default>MyEvent</Default>
    </Literal>
</Declarations>

To take where a exact module be inserted you add the exact study to the code, enclosed with note symbols ($). Ours module be proclaimed as “$EventName$”. We requirement to add quaternary placeholders, as follows:

<![CDATA[public circumstance EventHandler $EventName$;

public realistic vacuum On$EventName$()
{
    if ($EventName$ != null)
        $EventName$(this, EventArgs.Empty);
}]]>

LEARN VISUAL STUDIO CODE SNIPPET TYPES

In a preceding article I described how you crapper create your possess base cipher snippets to earmark you to append commonly utilised cipher at the underway indicator position. This was followed by an article that explained how to meliorate those snippets with the ingest of replacements, which delimitate placeholders to be replaced with Visual Studio’s assistance.

Each of these articles showed an warning piece with a circumscribed piece identify but did not exposit the types from which you haw choose. In this article we module analyse the digit acquirable styles, famous as Expansion and SurroundsWith snippets.

Expansion Snippets

The preceding cipher piece articles provided examples of treatment snippets. These append piece cipher at the underway book cursor, or caret, location. The identify crapper be utilised lonely or compounded with the SurroundsWith style.

SurroundsWith Snippets

SurroundsWith cipher snippets earmark cipher to be inserted before and after the underway activity in the cipher editor. They are multipurpose when you desire to inform a cipher structure, much as a for loop, that surrounds existing code. To shew a exemplary snippet, superior whatever cipher in a C# editor. Right-click the highlighted cipher and opt “Insert Snippet”, or advise Ctrl-K,B to pass the acquirable snippets. Select “Visual C#” and then “for”. This inserts a for wrap around the designated cipher and provides placeholders that support you in environment the study of the wrap curb uncertain and the size of the loop.

Creating a SurroundsWith Code Snippet

As the preceding articles included treatment snippets we module not create a boost warning here. Instead, we module create a SurroundsWith piece that crapper also be utilised as an treatment snippet. It module earmark a country of cipher to be commented out, adding a duty itemize interpret and providing replacements for the fellow and the developer’s name.

There are digit key differences between this warning and those we hit seen before. Firstly, the SnippetTypes surroundings includes digit identify definitions. One SnippetType surroundings specifies that the piece crapper be utilised to touch designated cipher and the another allows the cipher to be inserted at the caret position.

The ordinal disagreement is the launching of digit newborn placeholders in the Code section. The $selected$ agent represents the cipher that is designated before the piece is inserted. Code before this symbol module materialize before the example activity and cipher after the agent module be inserted after the selection. The ordinal agent appears as $end$. This determines the function of the caret after the piece is inserted and every replacements are made. In our piece the caret module be settled beneath the interpret brick but above the example selection.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
    <Header>
        <Title>Comment Out Code</Title>
        <Author>BlackWasp</Author>
        <Shortcut>cout</Shortcut>
        <Description>Comments discover a country of code</Description>
        <SnippetTypes>
            <SnippetType>SurroundsWith</SnippetType>
            <SnippetType>Expansion</SnippetType>
        </SnippetTypes>
    </Header>
    <Snippet>
        <Declarations>
            <Literal>
                <ID>RemovedDate</ID>
                <ToolTip>Enter fellow of removal</ToolTip>
                <Default>[Insert Date]</Default>
            </Literal>
            <Literal>
                <ID>Developer</ID>
                <ToolTip>Enter your name</ToolTip>
                <Default>[My Name]</Default>
            </Literal>
        </Declarations>
        <Code Language="CSharp">
            <![CDATA[// TODO: Review cipher beneath and study for removal

    /*  Code distant on $RemovedDate$ by $Developer$
        $end$

        $selected$
    */]]>
        </Code>
    </Snippet>
</CodeSnippet>