コード例 #1
0
ファイル: InicioViewModel.cs プロジェクト: pictos/TaskTest
        async Task ExecuteCarregarCommand()
        {
            var timer = new Stopwatch();

            if (!IsBusy)
            {
                try
                {
                    Palestrantes.Clear();
                    Palestras.Clear();
                    IsBusy = true;
                    timer.Start();
                    var taskpalestra    = ApiServico.ObterPalestras();
                    var taskpalestrante = ApiServico.ObterPalestrantes();

                    //var palestrante = await taskpalestrante;
                    //var palestra    = await taskpalestra;

                    CarregarDados(await taskpalestrante);
                    CarregarDados(await taskpalestra);
                    timer.Stop();

                    Tempo = timer.ElapsedMilliseconds.ToString();
                }
                catch (Exception ex)
                {
                    await DisplayAlert("Erro", $"Erro:{ex.Message}", "Ok");
                }
                finally
                {
                    IsBusy = false;
                }
            }
            return;
        }
コード例 #2
0
        private void PanoramaChanged(SelectionChangedEventArgs args)
        {
            var header = ((PanoramaItem)args.AddedItems[0]).Header.ToString();

            switch (header)
            {
            case "Tracks":
                if (!Tracks.Any())
                {
                    LoadTracks();
                }
                break;

            case "Palestrantes":
                if (!Palestrantes.Any())
                {
                    LoadPalestrantes();
                }
                break;

            case "Palestras":
                if (!Palestras.Any())
                {
                    LoadPalestras();
                }
                break;
            }
        }
コード例 #3
0
        void btnCarregar_Click(object sender, EventArgs e)
        {
            var timer = new Stopwatch();

            try
            {
                Palestras.Clear();
                Palestrantes.Clear();

                timer.Start();

                // CarregarSequencial();
                // CarregarSequencialTask();

                // CarregarSequencialAwait();

                CarregarDados(await ApiServico.ObterPalestrasAwait());
                CarregarDados(await ApiServico.ObterPalestrantesAwait());

                timer.Stop();

                txtTimer.Text = timer.ElapsedMilliseconds.ToString();
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Erro: {ex.Message}", "Erro");
            }
            finally
            {
            }
        }
コード例 #4
0
ファイル: Sessao.cs プロジェクト: gmendesbhe/TesteEturn
 public void AdicionarPalestra(Palestra aPalestra)
 {
     if (aPalestra.Duracao > TempoDisponivel)
     {
         throw new SemTempoDisponivelException();
     }
     Palestras.Add(aPalestra);
 }
コード例 #5
0
        private async void LoadPalestras()
        {
            var palestrasRequest = new PalestrasRequest();
            var palestras        = await palestrasRequest.List();

            SynchronizationContext.Current.Post(state =>
            {
                if (palestras != null)
                {
                    foreach (var palestra in palestras)
                    {
                        Palestras.Add(palestra);
                    }
                }
            }, null);
        }
コード例 #6
0
        public ActionResult SubmitPalestra(Palestras palestra)
        {
            if (ModelState.IsValid)
            {
                using (var db = new DatabaseEntities())
                {
                    db.Palestras.Add(palestra);
                    db.SaveChanges();
                }

                return(RedirectToAction("ListaPalestras"));
            }
            else
            {
                return(View());
            }
        }
コード例 #7
0
ファイル: InicioViewModel.cs プロジェクト: pictos/TaskTest
        void CarregarDados <T>(IEnumerable <T> colecao) where T : class
        {
            var tipo = typeof(T);

            if (tipo == typeof(Palestra))
            {
                foreach (var item in colecao)
                {
                    Palestras.Add(item as Palestra);
                }
            }
            else
            {
                foreach (var item in colecao as IEnumerable <Palestrante> )
                {
                    Palestrantes.Add(item);
                }
            }
        }
コード例 #8
0
        private void CarregarDados <T>(IEnumerable <T> colecao) where T : class
        {
            if (typeof(T) == typeof(Palestra))
            {
                foreach (var item in colecao)
                {
                    Palestras.Add(item as Palestra);
                }
            }
            else
            {
                foreach (var item in colecao as IEnumerable <Palestrante> )
                {
                    Palestrantes.Add(item);
                }
            }

            CarregarLista(colecao);
        }
コード例 #9
0
        private void LoadDesignData()
        {
            Tracks.Add(new Track("O que eu sempre quiz fazer mas nunca fiz", "Teste 2 Teste 2 Teste 2 Teste 2 Teste 2\n Teste 2 Teste 2 Teste 2 Teste 2  Teste 2 Teste 2 Teste 2 Teste 2  Teste 2 Teste 2 Teste 2 Teste 2 "));
            Tracks.Add(new Track("Teste", "Teste"));
            Tracks.Add(new Track("Arquitetura na cloud", "Teste 1"));

            Palestrantes.Add(new Palestrante("Elemar Jr", "http://qconsp.com/images/palestrantes/elemar-junior.jpg?1339080693"));

            Palestras.Add(new Palestra
            {
                Descricao = "Conteudo da palestra 1 que fala sobre alguma coisa que eu não sei mais o que escrever aqui",
                Horario   = new DateTime(2012, 08, 4, 12, 00, 00),
                Nome      = "Palestra 1",
                Track     = Tracks.First()
            });

            Palestras.Add(new Palestra
            {
                Descricao = "Conteudo da palestra 2 que fala sobre alguma coisa que eu não sei mais o que escrever aqui",
                Horario   = new DateTime(2012, 8, 5, 15, 00, 00),
                Nome      = "Palestra 2",
                Track     = Tracks.Last()
            });
        }
コード例 #10
0
ファイル: Default.aspx.cs プロジェクト: ricardop1021/Trilha
        protected void Page_Load(object sender, EventArgs e)
        {
            int tempototal = 120, count = 0, tempotrilha = 480, tempocalculado = 0;
            List <Palestras> palestras = new List <Palestras>();
            string           almoco = "horário de almoço", network = "Evento de network";
            TimeSpan         temp      = new TimeSpan(0, 0, 0);
            TimeSpan         tp_final  = new TimeSpan(9, 0, 0);
            TimeSpan         tp_inicio = new TimeSpan(0, 0, 0);
            Palestras        palestra  = new Palestras();

            /*Preenchendo a lista*/
            InserirItens(palestras, almoco, network, temp);

            List <Palestras> palestrasOrdenadas = new List <Palestras>();

            /*metodo para definir a quatidade de trilhas existentes na lista*/
            ContarTrilhas(ref tempototal, ref count, palestras);
            int trilha = tempototal / tempotrilha;
            int flag   = 0;


            for (int x = 0; x < trilha; x++)
            {
                palestrasOrdenadas.Add(new Palestras(0, "trilha" + (flag + 1), temp));
                SalvarBd(0, "trilha" + (flag + 1), temp);

                /*aqui controlamos a quantidade de trilhas de acordo com  a quantidade de cadastros,
                 * temos uma flag que é incrementada toda vez que termina de inserir uma trilha completa,
                 * caso esta fçag for menor do que a quantidade de trilhas o loop continua*/
                if (flag < trilha)
                {
                    /*For para rodar até horario de almoço*/
                    for (int i = 0; i < palestras.Count; i++)
                    {
                        if ((tempocalculado <= tempotrilha - 1) && (palestras[i].Alocada == false))
                        {
                            if ((tempocalculado == 135) && (palestras[i].Tempo == 45) || (tempocalculado == 135) && (palestras[i].Tempo != 60) || (tempocalculado != 135))
                            {
                                /*metodo para encontrar o horario de almoço: se horario for igual a 12:00 ou 15 miutos antes,
                                 * insere na lista o horario para almoço*/
                                if ((tempocalculado == 180) || (tempocalculado == 165))
                                {
                                    ExibirAlmoco(ref tempocalculado, palestras, almoco, palestrasOrdenadas, ref tp_final);
                                }

                                InserirPalestrasSeq(ref tempocalculado, palestras, almoco, network, ref tp_final, ref tp_inicio, palestrasOrdenadas, i);
                            }
                            if ((tempocalculado >= 450) && (palestras[i].Tempo <= 30))
                            {
                                for (int j = 0; j < palestras.Count; j++)
                                {
                                    if (palestras[i].Alocada == false)
                                    {
                                        InserirPalestrasSeq(ref tempocalculado, palestras, almoco, network, ref tp_final, ref tp_inicio, palestrasOrdenadas, i);
                                    }
                                }
                            }
                        }
                    }
                }
                tp_final = new TimeSpan(17, 0, 0);
                palestrasOrdenadas.Add(new Palestras(0, network, tp_final));
                SalvarBd(0, network, tp_final);
                tp_final       = new TimeSpan(9, 0, 0);
                tempocalculado = 0;
                flag++;
            }



            /*apresentando na tela*/
            CarregarGrid();

            //GVtrilhas.DataSource = palestrasOrdenadas;
            //GVtrilhas.DataBind();
        }