所以我需要计算 JObject 中有多少字段的值不为空或空格。我想出了下面的解决方案,效果很好。但是,我想知道是否有一种方法可以用 LINQ 中的一行代码来实现这一点?
JObject jObject = JObject.Parse(@"{
""Name"":""Nisse"" ,
""Address"":""Road1"",
""Zip"":"""",
}");
var counter = 0;
foreach (var x in jObject)
{
if (!string.IsNullOrWhiteSpace(x.Value.ToString()))
counter++;
}
//Counter is now 2
最佳答案
下面检查每个属性并返回非空属性
jObject.Children().AsEnumerable().ToList()
.Count(t=> !string.IsNullOrWhiteSpace( t.Values().ToList()[0].ToString()))
注意:此代码基于所提供的对象结构。
关于c# - 如何计算 JObject 中有多少个使用 LINQ 设置的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54667924/