示例#1
0
        public static bool SaveDeckToFile(DeckDm deck)
        {
            var path = GetDirectory(deck.DeckName);

            if (File.Exists(path))
            {
                File.Delete(path);
            }
            var temp = File.Create(path);

            temp.Flush();
            temp.Close();

            using (var file = new StreamWriter(@path))
            {
                file.WriteLine($"1x {deck.Commander.Name} *CMDR*");

                foreach (var card in deck.Cards)
                {
                    file.WriteLine($"1x {card.Name}");
                }

                file.Close();
            }

            return(true);
        }
示例#2
0
 public static void UpdateDeckName(DeckDm deck)
 {
     using (var db = new MtgEntities())
     {
         var sql = $"Update Deck Set DeckName = '{deck.DeckName}' Where DeckId = {deck.Id}";
         db.Database.ExecuteSqlCommand(sql);
     }
 }
示例#3
0
 private static void DeleteCard(DeckDm deck, CardDm card)
 {
     using (var db = new MtgEntities())
     {
         var deckCard = db.DeckCards.Single(dc => dc.DeckId == deck.Id && dc.CardId == card.Id);
         db.DeckCards.Remove(deckCard);
         db.SaveChanges();
     }
 }
示例#4
0
        public static void InsertDeck(DeckDm deck)
        {
            var newDeck = DeckMapper.Map(deck);

            using (var db = new MtgEntities())
            {
                db.Decks.Add(newDeck);
                db.SaveChanges();
            }
        }
示例#5
0
        public static DeckDm Map(Deck em)
        {
            var dm = new DeckDm
            {
                Id        = em.DeckId,
                DeckName  = em.DeckName,
                Commander = CardMapper.Map(em.Card),
                Cards     = CardMap(em.DeckCards).ToList()
            };

            return(dm);
        }
示例#6
0
        public static Deck Map(DeckDm dm)
        {
            var em = new Deck
            {
                DeckId    = dm.Id,
                DeckName  = dm.DeckName,
                Commander = dm.Commander.Id,
                DeckCards = CardMap(dm.Id, dm.Cards).ToList()
            };

            return(em);
        }
示例#7
0
        public static bool CreateDeck(string deckName, string commanderName)
        {
            var commander = CardRepository.GetCardByName(commanderName);

            if (commander == null)
            {
                return(false);
            }

            var deck = new DeckDm
            {
                Id        = 0,
                DeckName  = deckName,
                Commander = commander
            };

            DeckRepository.InsertDeck(deck);

            return(true);
        }
示例#8
0
 public static void UpdateDeck(DeckDm deck)
 {
     InsertCards(deck.DeckName, deck.Cards);
 }