#c# #sharepoint #office365
#c# #sharepoint #office365
Вопрос:
Привет всем, я работал над этим весь день сегодня, и, похоже, я не могу понять это. Я не очень хорошо разбираюсь в C # и скорее просто любитель. Чего я пытаюсь достичь, так это получить значения, которые находятся внутри массива json, называемого сайтами. Я могу извлечь заголовок, все свойства и т. Д… Я просто не знаю, как получить доступ к свойству, представляющему собой массив. Когда я пытаюсь запустить значения, мне возвращается Newtonsoft.Json.Linq.JEnumerable`1[Newtonsoft.Json.Linq.JToken. Я также проверил, имеет ли ключ «сайты» значения, и он возвращает true. Любая помощь по этому вопросу была бы весьма признательна.
private void btnGetLists_Click(object sender, EventArgs e)
{
var context = ConnectPNP();
var web = context.Web;
//context.Load(web, w => w.Lists);
context.ExecuteQueryRetry();
var sitepages = web.Lists.GetByTitle("Site Pages");
var item = sitepages.GetItemById(1);
context.Load(item, i => i.File);
context.ExecuteQueryRetry();
var file = item.File;
var page = ClientSidePage.Load(context, file.Name);
var webParts = page.Controls.FindAll(x => x.Type.Name == "ClientSideWebPart");
foreach (var part in webParts)
{
var parttoshow = (ClientSideWebPart)part;
var myWebPart = parttoshow.Properties;
Console.WriteLine(myWebPart.Values());
}
}
Ответ №1:
@Timg,
Я протестировал ваш код в своей среде. Это ClientSideWebPart.Properties
a Newtonsoft.Json.Linq.JObject
.
Думаю, вы можете использовать Item [String] для получения его значения. Чтобы получить внутренний массив, вы можете взять ссылку: