Пример #1
0
        public async void Init(Parameters arg)
        {
            try
            {
                _dataModel = await ServiceBus.NewsService.GetWeeklyNewsByIdAsync(arg.WeekliesId);

                Body = "";
                foreach (var fullNewsId in _dataModel.FullNews)
                {
                    var newsItem = await ServiceBus.NewsService.GetNewsByIdAsync(fullNewsId);

                    if (newsItem != null)
                    {
                        var header = $"<h3>{newsItem.Title}</h3>";
                        var footer = "<br/>";
                        Body += $"{header} {newsItem.Body} {footer}";
                    }
                    //var newDeatilsViewModel = new NewsDetailsViewModel();
                    //newDeatilsViewModel.Init(new NewsDetailsViewModel.Parameters { NewsId = fullNews });
                    //News.Add(newDeatilsViewModel);
                }
                Title = _dataModel.Title;
            }
            catch (Exception ex)
            {
                Log.Error(ex);
            }
        }
        public static async Task <WeeklyItemViewModel> FromModel(WeeklyNews news)
        {
            var firstNews = await ServiceBus.NewsService.GetNewsByIdAsync(news.FullNews[0]);

            // TODO: Why do we pass values, not WeeklyNews reference with encapsulated properties?

            return(new WeeklyItemViewModel
            {
                PreviewImageUri = firstNews.Body != null?firstNews.Body.GetFirstImageUri() : "",
                                      WeeklyId = news.WeeklyId,
                                      Title = news.Title,
                                      AuthorId = news.AuthorId,
                                      Date = news.Date
            });
        }