使用 Json.NET 架构解析 JSON 架构会引发错误 System.MethodAccessException
Parsing JSON Schema using Json.NET schema throws error System.MethodAccessException
我正在尝试 JSON 模式验证。我在 JSON.NET Help page 上使用架构的基本示例。我得到异常
System.MethodAccessException: Attempt by method
'Newtonsoft.Json.Schema.JSchema.Parse(System.String)' to access method
'Newtonsoft.Json.Utilities.ValidationUtils.ArgumentNotNull(System.Object, System.String)' failed
我的代码如下
[TestMethod]
public void prettySimple()
{
string schemaJson = @"{
'type': 'object',
'properties': {
'name': {'type':'string'},
'hobbies': {
'type': 'array',
'items': {'type':'string'}
}
}
}";
JSchema schema = JSchema.Parse(schemaJson);
}
听起来 Newtonsoft.Json 和 Newtonsoft.Json.Schema.
之间的包不匹配
Newtonsoft.Json.Schema 依赖于 Newtonsoft.Json 版本 >= 6.0.8。因此请确保它在您的项目中是最新的。
我先安装了 Newtonsoft.Json,然后安装了模式包和代码 运行 对我来说很好。
我的包配置:
<packages>
<package id="Newtonsoft.Json" version="6.0.8" targetFramework="net45" />
<package id="Newtonsoft.Json.Schema" version="1.0.8" targetFramework="net45"/>
</packages>
我正在尝试 JSON 模式验证。我在 JSON.NET Help page 上使用架构的基本示例。我得到异常
System.MethodAccessException: Attempt by method
'Newtonsoft.Json.Schema.JSchema.Parse(System.String)' to access method
'Newtonsoft.Json.Utilities.ValidationUtils.ArgumentNotNull(System.Object, System.String)' failed
我的代码如下
[TestMethod]
public void prettySimple()
{
string schemaJson = @"{
'type': 'object',
'properties': {
'name': {'type':'string'},
'hobbies': {
'type': 'array',
'items': {'type':'string'}
}
}
}";
JSchema schema = JSchema.Parse(schemaJson);
}
听起来 Newtonsoft.Json 和 Newtonsoft.Json.Schema.
之间的包不匹配Newtonsoft.Json.Schema 依赖于 Newtonsoft.Json 版本 >= 6.0.8。因此请确保它在您的项目中是最新的。
我先安装了 Newtonsoft.Json,然后安装了模式包和代码 运行 对我来说很好。
我的包配置:
<packages>
<package id="Newtonsoft.Json" version="6.0.8" targetFramework="net45" />
<package id="Newtonsoft.Json.Schema" version="1.0.8" targetFramework="net45"/>
</packages>