Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

369
Visualizações
How can I use escape characters with string interpolation in C# 6?

I've been using string interpolation and love it. However, I have an issue where I am trying to include a backslash in my output, but I am not able to get it to work.

I want something like this...

var domain = "mydomain";
var userName = "myUserName";
var combo = $"{domain}\{userName}"

I want the output of combo to be:

myDomain\myUserName

I get a syntax error about the \ being an escape character. If I put in \\ then the syntax error is gone, but the output is myDomain\\myUsername.

How can I include escaped characters in an interpolated string?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Escaping with a backslash(\) works for all characters except a curly brace.

If you are trying to escape a curly brace ({ or }), you must use {{ or }} per $ - string interpolation (C# reference)

... All occurrences of double curly braces (“{{“ and “}}”) are converted to a single curly brace.

over 4 years ago · Santiago Trujillo Relatório

0

You can do this, using both the $@. The order is important.

var combo = $@"{domain}\{userName}";

The original question mentions specifically C# 6. As commented, C# 8 no longer cares for the order.

over 4 years ago · Santiago Trujillo Relatório

0

Eduardo is correct. You escape curly braces by doubling up. Therefore, if you wanted to output the domain variable as {mydomain} you would need to do:

$"{{{domain}}}";

Furthermore, assuming that the current date is 1 Sept 2016, doing this:

$"The date is {DateTime.Now}";

would output something like "The date is 2016/09/01 3:04:48 PM" depending on your localization. You can also format the date by doing:

$"The date is {DateTime.Now : MMMM dd, yyyy}";

which would output "The date is September 1, 2016". Interpolated strings are much more readable. Good answer Eduardo.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda