コード例 #1
0
        public async Task <IActionResult> Create(CardInfo[] cardInfos)
        {
            if (ModelState.IsValid)
            {
                DeckVsCards deckVsCards = new DeckVsCards();
                Deck        deck        = new Deck();
                foreach (CardInfo item in cardInfos)
                {
                    deckVsCards.Deck = deck;
                    deckVsCards.Card = item;
                    _context.Add(deckVsCards);
                }
                ;

                await _context.SaveChangesAsync();

                var something = from decks in _context.DeckVsCard select decks;
                RedirectToAction(nameof(Details), something.Where(c => c.Deck.DeckId == deckVsCards.Deck.DeckId).FirstOrDefault().DeckVsCardsId);
                return(View());
            }
            else
            {
                return(View());
            }
        }
コード例 #2
0
        public async Task <IActionResult> Create([Bind("CardInfoId,CardId,DbId,Name,Type,Text,Class,CardSet,Img")] CardInfo cardInfo)
        {
            if (User.IsInRole("Admin"))
            {
                HttpResponse <Hearthstone.Hs> response = Unirest.get("https://omgvamp-hearthstone-v1.p.mashape.com/cards")
                                                         .header("X-Mashape-Key", "GBUA6L0J0QmshBqbIxIzTmy4Up8tp1r18WOjsnu52LriUEs890")
                                                         .asJson <Hearthstone.Hs>();
                List <Hearthstone.Hs> hearthstoneCards = new List <Hearthstone.Hs>
                {
                    response.Body
                };
                PropertyInfo[] property = typeof(Hearthstone.Hs).GetProperties();
                foreach (PropertyInfo info in property)
                {
                    if (info.GetValue(response.Body) is List <Hearthstone.Basic> item2)
                    {
                        foreach (Hearthstone.Basic item in item2)
                        {
                            using (WebClient client = new WebClient())
                            {
                                if (item.Img != null)
                                {
                                    try
                                    {
                                        var file = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "images", item.Name + ".png");
                                        client.DownloadFile(item.Img, file);
                                        item.Img = item.Name + ".png";
                                        CardInfo card = item;
                                        if (card.AdditionCard != null)
                                        {
                                            if (card.AdditionCard.Rarity != null)
                                            {
                                                Console.WriteLine(card.AdditionCard.Rarity);
                                            }
                                        }
                                        _context.Add(card);
                                    }
                                    catch (Exception)
                                    {
                                    }
                                }
                            }
                        }
                    }
                }
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                return(RedirectToAction(nameof(Index)));
            }
        }