我有一个看起来像这样的 JArray:
我正在使用下面的代码来获得预期的结果: 6035940:8061090,6035940:8084337
。
我可以用 Linq 清理它吗?如何?
public static string GiveClientCampaignParam(JArray myArray)
{
StringBuilder sb = new StringBuilder();
foreach (var arrayItem in myArray)
{
string clientId = arrayItem["ClientId"].ToString();
string campaignId = arrayItem["CampaignId"].ToString();
sb.Append(clientId + ":" + campaignId + ",");
}
sb.Remove(sb.Length - 1, 1);
return sb.ToString();
}
最佳答案
使用 string.Join 和 Select 将 JArray 元素投影到字符串:
public static string GiveClientCampaignParam(JArray myArray)
{
return string.Join(",", myArray.Select(j => $"{j["ClientId"]}:{["CampaignId"]}"));
}
使用 string.Join 还意味着您不需要从末尾减去额外的逗号。
关于c# - 使用 LINQ 在 JArray 中连接字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26637176/