0

我能够成功取回我存储在 Sharepoint 中的流派列表。TaxonomyCollection我相信这是非正式的。客户端对象将其发回的方式有点奇怪,很难采用另一种形式。也许我做错了什么?

这是我返回的 JSON:(请参阅 Genres 节点下的项目)。例如,我想获得Label价值。看起来很直接。

在此处输入图像描述

现在这就是客户端对象模型中实际返回的内容。

在此处输入图像描述

这太疯狂了,这是我编写的代码,只是为了获得一种流派的标签:

var items = clientContext.Web.Lists.GetByTitle("Contacts").GetItems(itemsQuery);
//Execution code removed for brevity
Dictionary<string,object> g = ((Dictionary<string,object>)items.ToList()
                               .First()["Genres"]);
var g2 = g.ToList()[1];
var g3 = (object[])g2.Value;
var g4 = (object[])((Dictionary<string, object>) g3[0]).Values.ToArray();
var g5 = g4[1].ToString();

如您所见,它很丑陋,并且编写一个 linq 语句以最终获得所有标签同样丑陋且难以编写。我在想我做错了。有什么建议么?

4

1 回答 1

1

以此为参考。

解决方案是:

(items[0]["Genres"] as TaxonomyFieldValueCollection).ToList().Select(x=> x.Label);
于 2013-09-24T22:02:15.800 回答