Example #1
0
        private void SelectFolderBtn_Click(object sender, EventArgs e)
        {
            using (var fbd = new FolderBrowserDialog())
            {
                DialogResult result = fbd.ShowDialog();

                if (result == DialogResult.OK && !string.IsNullOrWhiteSpace(fbd.SelectedPath))
                {
                    SelectFolderTxt.Text = fbd.SelectedPath;
                    var gameIds     = FolderUtils.GetGameIds(fbd.SelectedPath);
                    var gameService = new GameService.GameService(fbd.SelectedPath);
                    GameList.Items.Clear();
                    foreach (var id in gameIds)
                    {
                        var info     = gameService.GetGameInfo(id);
                        var viewItem = new ListViewItem(info.Title);
                        viewItem.SubItems.Add(info.Publisher);
                        viewItem.SubItems.Add(info.Id.ToString());
                        GameList.Items.Add(viewItem);
                    }

                    _executingDirectory = fbd.SelectedPath;
                    ApplyBtn.Enabled    = true;
                }
            }
        }
Example #2
0
        private void UpdateGameDb()
        {
            var gameService = new GameService.GameService(_executingDirectory);

            var gameIds = FolderUtils.GetGameIds(_executingDirectory);

            using (var db = new GameDbContext(_executingDirectory))
            {
                foreach (var existingGame in db.Games)
                {
                    db.Remove(existingGame);
                }

                foreach (var existingDisc in db.Discs)
                {
                    db.Remove(existingDisc);
                }

                db.SaveChanges();

                foreach (var id in gameIds)
                {
                    var gameInfo = gameService.GetGameInfo(id);

                    var game = new Game()
                    {
                        Id        = id,
                        Title     = gameInfo.Title,
                        Publisher = gameInfo.Publisher,
                        Year      = gameInfo.Year,
                        Players   = gameInfo.Players
                    };

                    var i = 1;

                    foreach (var discId in gameInfo.DiscIds)
                    {
                        var disc = new Disc()
                        {
                            GameId       = id,
                            DiscNumber   = i,
                            DiscBasename = discId
                        };

                        i++;

                        db.Add(disc);
                    }

                    db.Add(game);
                }

                db.SaveChanges();
            }
        }