Я использую System.Web.Helpers.Json
для десериализации некоторого JSON в dynamic
в NET 4. Следующая строка не работает с этой ошибкой: TypeInitializationException: Attempt by method 'System.Web.Helpers.Json..cctor()' to access method 'System.Web.Helpers.Json.CreateSerializer()' failed.
var json = Json.Decode(response);
response
является длинным, но действительным JSON. Что тут может быть? Я пробовал LINQPad с коротким ручным JSON, и это сработало. Это какая-то проблема конфигурации?
[EDIT]
Вот пример JSON. Похоже, что контент почти не имеет значения. Когда это выполняется в новом консольном приложении или LINQPad, оно работает так, как ожидалось. Но если вы попытаетесь запустить тот же код из совершенно нового приложения Windows Forms, он запустит вышеуказанную ошибку.
var json = Json.Decode("{\"r\":{\"0\":{\"id\":\"2\"},\"1\":{\"id\":\"33\"}}}");
[EDIT2]
На самом деле, оказывается, это не имеет ничего общего с типами проектов. Исключение выдается, если проект отлаживается. Если он просто запущен, исключение не возникает. Странно, а??