У меня есть этот json -файл:
{
"TestString": "This is a \"{Test}\""
}
Если он не существует, я автоматически сгенерирую его.
Например, это C# -код , где я использую строку напрямую:
class Programm
{
static void Main()
{
string s = "{ \"TestString\": \"This is a \"{test}\"\"}";
Test test = JsonConvert.DeserializeObject<Test>(s);
}
}
Теперь проблема в том, что строка не работает таким образом, потому что C# сделает кавычки буквальными, а затем сохранит их в string s
, в результате получается
"{ "TestString": "This is a "{test}""}"
, что является ошибочной json -строкой, потому что кавычки не экранируются.
static void Main()
{
string s = @"{ ""TestString"": ""This is a ""{test}""""}";
Test test = JsonConvert.DeserializeObject<Test>(s);
}
Преобразование всей строки в литерал приводит к тому же.
Я что-то упускаю?