public async Task <List <ISyntexModelPublication> > GetModelPublicationsAsync() { var apiCall = new ApiCall($"_api/machinelearning/publications/getbymodeluniqueid('{UniqueId}')", ApiType.SPORest); var publications = await(ListItem as ListItem).RawRequestAsync(apiCall, HttpMethod.Post).ConfigureAwait(false); List <SyntexModelPublication> results = new List <SyntexModelPublication>(); if (!string.IsNullOrEmpty(publications.Json)) { var root = JsonDocument.Parse(publications.Json).RootElement.GetProperty("d").GetProperty("results"); if (root.ValueKind == JsonValueKind.Array) { foreach (var publicationResultJson in root.EnumerateArray()) { var modelPublication = new SyntexModelPublication { ModelUniqueId = publicationResultJson.GetProperty("ModelUniqueId").GetGuid(), TargetLibraryServerRelativeUrl = publicationResultJson.GetProperty("TargetLibraryServerRelativeUrl").GetString(), TargetWebServerRelativeUrl = publicationResultJson.GetProperty("TargetWebServerRelativeUrl").GetString(), TargetSiteUrl = publicationResultJson.GetProperty("TargetSiteUrl").ToString(), ViewOption = (MachineLearningPublicationViewOption)Enum.Parse(typeof(MachineLearningPublicationViewOption), publicationResultJson.GetProperty("ViewOption").ToString()) }; results.Add(modelPublication); } } } return(results.Cast <ISyntexModelPublication>().ToList()); }
private static void ProcessGetModelPublicationsResponse(string json, List <ISyntexModelPublication> results) { var root = JsonSerializer.Deserialize <JsonElement>(json).GetProperty("value"); if (root.ValueKind == JsonValueKind.Array) { foreach (var publicationResultJson in root.EnumerateArray()) { var modelPublication = new SyntexModelPublication { ModelUniqueId = publicationResultJson.GetProperty("ModelUniqueId").GetGuid(), TargetLibraryServerRelativeUrl = publicationResultJson.GetProperty("TargetLibraryServerRelativeUrl").GetString(), TargetWebServerRelativeUrl = publicationResultJson.GetProperty("TargetWebServerRelativeUrl").GetString(), TargetSiteUrl = publicationResultJson.GetProperty("TargetSiteUrl").ToString(), ViewOption = (MachineLearningPublicationViewOption)Enum.Parse(typeof(MachineLearningPublicationViewOption), publicationResultJson.GetProperty("ViewOption").ToString()) }; results.Add(modelPublication); } } }