So che possiamo sfuggire alla parentesi graffa in C# utilizzando {{
e }}
. Ma non sembrano funzionare bene se hanno ragione dopo un modificatore di formato (come {0:F6}
).La parentesi graffa C# escape non funziona con il modificatore di formato?
string str;
// Prints "{3.14}" as expected
str = string.Format("{{{0}}}", 3.14);
Console.WriteLine(str);
// Expected "{3.140000}", found "{F6}"
str = string.Format("{{{0:F6}}}", 3.14);
Console.WriteLine(str);
Perché non basta 'str = "{" + string.Format ("{0: F6}", 3.14) + "}"; ' – Pikoh
@Pikoh penso che la domanda riguardi più" questo comportamento è previsto in C# " – user1666620
La risposta di @ blas3nik spiega perché; vedere anche MSDN "Escaping Braces" in "[Composite Formatting] (https://msdn.microsoft.com/en-us/library/txafckwd (v = vs.110) .aspx)" dove è chiaramente spiegato; in particolare "* l'interpretazione delle parentesi graffe non è supportata *". – gerryLowry