예제 #1
0
 private void btnStampaIscritti_Click(object sender, EventArgs e)
 {
     Cursor.Current = Cursors.WaitCursor;
     if (grdEventi.SelectedRows.Count == 1)
     {
         FolderBrowserDialog selectFolder = new FolderBrowserDialog();
         var res = selectFolder.ShowDialog();
         if (res == DialogResult.OK)
         {
             string path = selectFolder.SelectedPath;
             long cdEvento = (long)grdEventi.SelectedRows[0].Cells["Numero"].Value;
             string date = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + "-" + DateTime.Now.Hour + "-" + DateTime.Now.Minute + "-" + DateTime.Now.Second + ".pdf";
             using (databaseContext = CreateDatabaseContext())
             {
                 EventiManagerNew manager = new EventiManagerNew(databaseContext);
                 List<Personaggio> listaPersonaggi = manager.GetPlayingCharacters(cdEvento).ToList();
                 CartelliniPersonaggio cartellini = new CartelliniPersonaggio(path + @"\Personaggio-" + date, listaPersonaggi, cdEvento);
                 cartellini.Save();
                 List<Personaggio> personaggiAbilitaAvanzate = new List<Personaggio>();
                 foreach (var personaggio in listaPersonaggi)
                 {
                     var abilitaAvanzate = from abilita in personaggio.AbilitaPersonaggios
                                       where abilita.Abilita.BaseAvanzato == 1
                                       orderby abilita.Abilita.Nome ascending
                                       select abilita;
                     if (abilitaAvanzate.Count() > 0)
                     {
                         personaggiAbilitaAvanzate.Add(personaggio);
                     }
                 }
                 if (personaggiAbilitaAvanzate.Count > 0)
                 {
                     CartelliniAbilitaAvanzate sintesiAbilita = new CartelliniAbilitaAvanzate(path + @"\Abilita-" + date, personaggiAbilitaAvanzate);
                     sintesiAbilita.Save();
                 }
             }
             MessageBox.Show("Stampa avvenuta");
             OpenFolder(path);
         }
     }
     Cursor.Current = Cursors.Default;
 }