Json C# Escaping String.Format

alfinete

Power Member
Json
_____________________
Código:
{
   "header": {
     "EquipementId": "{0}",
     "Userlogin": "{1}",
     "Password": "{2}",
     "SystemId": "{3}"
   }
}


c#
__________________

Código:
string Jsonteste = "{\"header\":{\"EquipementId\":\"{0}\",\"Userlogin\":\"{1}\",\"Password\":\"{2}\",\"SystemId\":\"{3}\"}}"


string valor  =  String.Format(Jsonteste ,"1","2","3","4");

tenho um Json que quero fazer string format para faze relcace de valores ?

mas vai rebentar , calculo que seja pelo escape das chavetas das posições a substituir{0}

mas não consigo fazer escape a {

agradecia uma ajuda
 
Json
_____________________
Código:
{
   "header": {
     "EquipementId": "{0}",
     "Userlogin": "{1}",
     "Password": "{2}",
     "SystemId": "{3}"
   }
}


c#
__________________

Código:
string Jsonteste = "{\"header\":{\"EquipementId\":\"{0}\",\"Userlogin\":\"{1}\",\"Password\":\"{2}\",\"SystemId\":\"{3}\"}}"


string valor  =  String.Format(Jsonteste ,"1","2","3","4");

tenho um Json que quero fazer string format para faze relcace de valores ?

mas vai rebentar , calculo que seja pelo escape das chavetas das posições a substituir{0}

mas não consigo fazer escape a {

agradecia uma ajuda

Usa duplas chavetas. Ou seja, onde queres que apareça uma chaveta na string usa duas chavetas. Exemplo:

Código:
int a = 1;
string b = string.Format("{{teste: {0}}}", a);

O output de b vai ser:

Código:
{teste: 1}

Embora eu acho que nesse caso te dá menos trabalho se fizeres uma concatenação normal ("string1" + var + "string2" + var). E o JSON não é assim que se usa. Porque é que não crias um objeto e depois fazes serialize para uma string diretamente?
 
Back
Topo