c# - 尝试通过方法 'System.Web.Helpers.Json..cctor()' 访问方法 'System.Web.Helpers.Json.CreateSerializer()' 失败

标签 c# .net json .net-4.0

我正在使用 System.Web.Helpers.Json 将一些 JSON 反序列化为 NET 4 中的 dynamic。以下行因此错误而失败:TypeInitializationException:尝试通过方法“System.Web.Helpers.Json..cctor()”访问方法“System.Web.Helpers.Json.CreateSerializer()”失败。

var json = Json.Decode(response);

response 是冗长但有效的 JSON。这里可能是什么问题?我试过LINQPad用一个简短的手工 JSON 并且它工作。这是某种配置问题吗?

[编辑]

这是实际的 JSON 示例。看起来内容几乎无关紧要。当它在全新的控制台应用程序或 LINQPad 中运行时,它会按预期工作。但是,如果您尝试从全新的 Windows 窗体应用程序运行相同的代码,则会出现上述错误。

var json = Json.Decode("{\"r\":{\"0\":{\"id\":\"2\"},\"1\":{\"id\":\"33\"}}}");

[编辑2]

实际上,这与项目类型无关。如果正在调试项目,则会引发异常。如果只是简单地运行,则不会发生异常。奇怪吧?

最佳答案

我忘记了这个问题,同时我找到了答案。我认为它在 Microsoft 的 Connect 网站上的某个地方,但我不确定。那么现在就分享给大家吧。

基本上,为了解决此问题,您需要确保在项目的“调试”设置中取消选中“启用 Visual Studio 托管进程”。我不确定它为什么会发生,但这绝对是一种“修复”它的方法。一旦我发现了这一点,我就停止寻找答案。这对我来说已经足够了。

Settings / Debug

关于c# - 尝试通过方法 'System.Web.Helpers.Json..cctor()' 访问方法 'System.Web.Helpers.Json.CreateSerializer()' 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7066726/

相关文章:

.net - ImmutableList<T> 的性能特征

arrays - 单击按钮时显示数据列表

python - 使用 pandas DataFrame 打开 JSON 文件

c# - RDLC 文件部署和大小

c# - 在没有注册表的情况下加载 IFilter

c# - 有没有办法用 WebClient 做一个 PUT?

arrays - 将多个$http返回数据按调用顺序赋值给一个数组

c# - 使用 C# 在 excel 中创建一个矩形?

c# - SqlParameter无法与INSERT语句一起使用

.net - 不可变对象(immutable对象)的约定