public MangaItemPage(MangaList manga) { this.manga = manga; this.mangas = Manga.QueryMangaItem(manga); InitializeComponent(); this.BindingContext = this.manga; this.SetBinding(TitleProperty, "Title"); this.listView.ItemsSource = this.mangas; }
public static async Task <int> FetchMangaItem(MangaList manga) { var realm = manga.Realm; var mangaItems = await Zang.FetchMangaItemAsync(manga); realm.Write(() => { foreach (var fetchedItem in mangaItems) { realm.Add(new MangaItem { Title = fetchedItem.Item1, Link = fetchedItem.Item2, Manga = manga }); } }); return(0); }
public static async Task <List <Tuple <String, String> > > FetchMangaItemAsync(MangaList manga) { var web = new HtmlWeb(); var doc = await web.LoadFromWebAsync(manga.Link); var nodes = doc.DocumentNode.Descendants() .Where(x => x.Id == "post") .First().Descendants("div") .Where(x => x.Attributes["class"].Value == "contents") .First().Descendants("a"); var titles = nodes.Select(x => x.InnerText).ToList(); var links = nodes.Select(x => x.Attributes["href"].Value).ToList(); return(titles.Zip(links, (title, link) => new Tuple <String, String>(title, link)) .ToList()); }
public static IQueryable <MangaItem> QueryMangaItem(MangaList manga) { var realm = manga.Realm; return(realm.All <MangaItem>().Where(x => x.Manga == manga)); }