• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 326
  • Last Modified:

what does this mean?

im new to c# and this programmer keeps using something like this in his code and i am tryinig to understand it but i have no freaking clue. maybe you call could help me with it. thank you in advance. what does @ mean and what does {2} or {3} mean and he also uses that in his query statement like select {2} .....
i don't get it at all. could you all help? thank you very much
TasksList.Text = string.Format(@"<ul class='taskslist' >
                                                 <li{0}><a href='{2}admin/default.aspx' >Administrator Tasks</a></li>
                                                 <li{1}><a href='{3}default.aspx' >Home</a></li>

Open in new window

  • 2
  • 2
  • 2
  • +1
4 Solutions
This may help you:

string damn = String.Format(
    "Hello {0} {1} {2} {3} {4} {5} ",
    "I live", "in Turkey here", 3, " a.m. and tired i am", "See",'u');

Hello I live in Turkey here 3 a.m and tired i am See u

Best regards...
@ is a overall skip all for all unique characters in the string litreal

insteat of writting "\\" you can write @"\"

Kevin CrossChief Technology OfficerCommented:
As illustrated above {0} are place holders/arguments that you pass in later.  The number inside represents the order in which those parameters will be passed in since they are not named.

"Hello {0} {2} {1}" is perfectly legal and would end up saying:
Hello I live 3 in Turkey here...

Here is information on @ quoting strings and its advantage:
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

the numbers between braces like {0} {1} is used for formatting strings
like putting strings inside another string

string firstname = "john";
string lastname = "emil";
Console.Write("first name : {0}, last name : {1}", firstname , lastname);

Open in new window

Kevin CrossChief Technology OfficerCommented:
What gemailj said.  I didn't see that post as I was typing myself, but that is the purpose for @-quoted string as you will see in my link to MSDN.
Anurag ThakurTechnical ManagerCommented:
the prograammer is using placeholders in {0} and {1} which can be replaced at runtine with different values so that we dont have to just use static strings but our strings are modified as required

for example
for(int i = 0; i < 10; i++
    String.Format("For Loop running for {0} time", (i+1).ToString());

read this article which puts more light on the usage of String.Format()

for other kinds of formatting read the following
Let's say i have this directory and i will use it in my code:


I could either escape the back-slash characters:

string path = "C:\\DamnedDir\\"

or use a verbatim string thus:

string path = @"C:\DamnedDir\"

Usefully, strings written using the verbatim string syntax can span multiple lines, and whitespace is preserved.

P.S. verbatim = word-by-word

Best regards..
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

  • 2
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now