コード例 #1
0
        private static IList <NewsSummary> loadData(XmlReader reader)
        {
            SyndicationFeed feed = SyndicationFeed.Load(reader);
            Dictionary <String, NewsSummary> fakeDatabase = new Dictionary <String, NewsSummary>();

            foreach (SyndicationItem item in feed.Items)
            {
                foreach (SyndicationCategory category in item.Categories)
                {
                    // Let's trust the data (mistaaaake!) and assume category can be used for the key
                    if (fakeDatabase.ContainsKey(category.Name))
                    {
                        NewsSummary ns = fakeDatabase[category.Name];
                        if (ns.NewestNewsDate < item.PublishDate)
                        {
                            ns.NewestNewsDate = item.PublishDate;
                        }
                        ns.NumberOfNews += 1;
                    }
                    else
                    {
                        NewsSummary ns = new NewsSummary
                        {
                            Category       = category.Name,
                            NewestNewsDate = item.PublishDate,
                            NumberOfNews   = 1
                        };
                        fakeDatabase.Add(category.Name, ns);
                    }
                }
            }
            return(fakeDatabase.Values.ToArray());
        }
コード例 #2
0
 public static NewsSummary ResolveTopicIcon(this NewsSummary news)
 {
     if (!string.IsNullOrEmpty(news.TopicIcon))
     {
         news.TopicIcon = $"/img/ikony/{news.TopicIcon}.gif";
     }
     return(news);
 }
コード例 #3
0
        public IActionResult Get()
        {
            var response = new NewsSummary
            {
                Title = "News title from microservice, hello!"
            };

            return(Ok(response));
        }
コード例 #4
0
        public async void ReadNewsSummary(string url)
        {
            _viewModel.LoadSummary(url);
            NewsSummary _summary = _viewModel.summary;

            try
            {
                this.SummaryBlock.Text = _summary.digest;
                string textToRead = _summary.title + ".\n" + _summary.source + " reports, " + _summary.digest + "\n\n";
                await synth.SpeakTextAsync(textToRead);
            }
            catch
            {
            }
        }
コード例 #5
0
 /// <summary>
 /// Handles the <see cref="E:NewsEvent" /> event.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="NewsSummaryEventArgs" /> instance containing the event data.</param>
 protected virtual void OnNewsSummary(object sender, NewsSummaryEventArgs e)
 {
     NewsSummary?.Invoke(sender, e);
 }