Search code examples
c#stringshorthand

Multiline string literal in C#


Is there an easy way to create a multiline string literal in C#?

Here's what I have now:

string query = "SELECT foo, bar"
+ " FROM table"
+ " WHERE id = 42";

I know PHP has

<<<BLOCK

BLOCK;

Does C# have something similar?


Solution

  • You can use the @ symbol in front of a string to form a verbatim string literal:

    string query = @"SELECT foo, bar
    FROM table
    WHERE id = 42";
    

    You also do not have to escape special characters when you use this method, except for double quotes as shown in Jon Skeet's answer.