Possible Duplicate:
What's the @ in front of a string for .NET?
Sometimes i saw the sample code, will have a “@” symbol along with the string.
for example:
EntityConnectionStringBuilder entityBuilder = new EntityConnectionStringBuilder();
entityBuilder.Provider = "System.Data.SqlServerCe.3.5";
entityBuilder.ProviderConnectionString = providerString;
entityBuilder.Metadata = @"res://*/App_Data.data.csdl|res://*/App_Data.data.ssdl|res://*/App_Data.data.msl";
On the 4th line, what is that usage of the “@”?
I try to remove this, it still works.
A string literal such as @”c:\Foo” is called a verbatim string literal. It basically means, “don’t apply any interpretations to characters until the next quote character is reached”. So, a verbatim string literal can contain backslashes (without them being doubled-up) and even line separators. To get a double-quote (“) within a verbatim literal, you need to just double it, e.g. @”My name is “”Jon””” represents the string My name is “Jon”. Verbatim string literals which contain line separators will also contain the white-space at the start of the line, so I tend not to use them in cases where the white-space matters. They’re very handy for including XML or SQL in your source code though, and another typical use (which doesn’t need line separators) is for specifying a file system path.
Taken from