It is a two step process because for some reason when you query for the contents of a group you need the group id not the group name.
This will get you the PortalGroup object
private async Task<PortalGroup> GroupFromTitle(string groupTitle)
{
PortalQueryParameters parameters = PortalQueryParameters.CreateForGroups("", groupTitle);
PortalQueryResultSet<PortalGroup> groupResultSet = await _portal.FindGroupsAsync(parameters);
PortalGroup offlineGroup = groupResultSet.Results.FirstOrDefault();
return offlineGroup;
}
You can pass in the group from above and this will return the items in that group.
private async Task LoadItemsFromGroup(PortalGroup portalGroup, PortalItemType itemType)
{
PortalQueryParameters groupParameters = PortalQueryParameters.CreateForItemsOfTypeInGroup(itemType, portalGroup.GroupId);
PortalQueryResultSet<PortalItem> queryResultSet = await portalGroup.Portal.FindItemsAsync(groupParameters);
foreach (var portalItem in queryResultSet.Results)
{
PortalItems.Add(new PortalListItem(portalItem));
}
}
Thanks,
-Joe