【问题标题】:C# 'Newtonsoft.Json.Linq.JValue' does not contain a definition for 'Contains'C#“Newtonsoft.Json.Linq.JValue”不包含“包含”的定义
【发布时间】:2017-10-26 09:55:55
【问题描述】:

我有一个字符串数组

string[] a = ["a","b","c"];

我有一个列表(我们称之为“b”),然后我将其反序列化为字符串

[ {"name" : "a", "email": "b@c.com"}, {"name" : "a", "email": "b@c.com"} ]

我想检查我的 List 是否包含 string[] a 中的任何内容。

var check = b.name.Contains(a[1]);

我收到错误

“Newtonsoft.Json.Linq.JValue”不包含“包含”的定义

我还有什么其他方法可以做到这一点?

【问题讨论】:

  • 在使用 contains 之前将 b.name 转换为字符串应该可以工作

标签: c# json linq object


【解决方案1】:

铸造 b.name.ToString() 解决了这个问题。谢谢!

【讨论】:

    【解决方案2】:

    你也可以使用这个代码

    var b= [{"name" : "a", "email": "b@c.com"}, {"name" : "a", "email": "b@c.com"}];
    
    dynamic dy= JsonConvert.DeserializeObject(b);
    
    string res = dy["name"].toString();
    

    或者

    dy.name.ToString() 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多