예제 #1
0
        public async Task FillItems(SampleDataGroup group)
        {
            var groupKind = group.GroupKind;

            try {
                var localMessages = await localStorageService.LoadGroup(groupKind);

                group.Items.Clear();
                foreach (var message in localMessages)
                {
                    group.Items.Add(CreateItem(message, group));
                }

                var networkMessages = await GetClientGroupMessages(groupKind);

                group.Items.Clear();
                foreach (var message in networkMessages)
                {
                    group.Items.Add(CreateItem(message, group));
                }
                messagesByGroupKind[groupKind] = networkMessages;
                if (networkMessages != null)
                {
                    group.Items.Clear();
                    networkMessages
                    .Select(x => CreateItem(x, group))
                    .ForEach(group.Items.Add);
                }
            } catch {
                // todo: show message that working offline
            }
        }