/// <summary>
 /// Carrega a página na inicialização dela.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void CarregarPagina(object sender, RoutedEventArgs e)
 {
     using (var db = new Contexto())
     {
         apresentarObjeto.DataContext = db.Materiais.Where(x => x == materialInteiro);
     }
 }
 /// <summary>
 /// Atualiza a página com novos dados do banco de dados.
 /// </summary>
 private void AtualizarPagina()
 {
     using(var db = new Contexto())
     {
         apresentarObjeto.DataContext = db.Materiais.Where(x => x == materialInteiro);
     }
 }
 private void CarregarPagina(object sender, RoutedEventArgs e)
 {
     using(var db = new Contexto())
     {
         ArmazenamentoRecente.DataContext = db.Armazenamentos.LastOrDefault();
     }
 }
 /// <summary>
 /// Remove o objeto selecionado do banco de dados.
 /// </summary>
 /// <param name="deletar"></param>
 public void RemoverBanco(Material deletar)
 {
     using (var db = new Contexto())
     {
         db.Materiais.Remove(deletar);
         db.SaveChanges();
     }
 }
 /// <summary>
 /// Função para remover um objeto Armazenamento do banco de dados.
 /// </summary>
 /// <param name="deletar">É o objeto a ser deletado</param>
 public void RemoverBanco(Armazenamento deletar)
 {
     using(var db = new Contexto())
     {
         db.Armazenamentos.Remove(deletar);
         db.SaveChanges();
     }
 }
 /// <summary>
 /// Atualiza a pagina com os novos valores do banco de dados.
 /// </summary>
 private void AtualizarPagina()
 {
     using (var db = new Contexto())
     {
         this.materialList.ItemsSource = db.Materiais.Where(x => x.ArmazenamentoId == ArmazenamentoTodo.Id);
         this.removeList.ItemsSource = db.Materiais.Where(x => x.ArmazenamentoId == ArmazenamentoTodo.Id);
     }
 }
 /// <summary>
 /// Carrega a lista de Armazenamento salva no banco de dados.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void CarregarPagina(object sender, RoutedEventArgs e)
 {
     using (var db = new Contexto())
     {
         this.materialList.ItemsSource = db.Materiais.Where(x => x.ArmazenamentoId == ArmazenamentoTodo.Id);
         this.removeList.ItemsSource = db.Materiais.Where(x => x.ArmazenamentoId == ArmazenamentoTodo.Id);
     }
 }
 /// <summary>
 /// Funcao para atualizar os dados das listas, caso contrario poderia haver problemas com o entityframework.
 /// </summary>
 private void AtualizarPagina()
 {
     using (var db = new Contexto())
     {
         ArmazenamentosList.ItemsSource = db.Armazenamentos.ToList();
         RemoverList.ItemsSource = db.Armazenamentos.ToList();
     }
 }
 /// <summary>
 /// Vai passar uma lista de todos valores do objeto Armazenamento existe dentro do banco de dados.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void CarregarPagina(object sender, RoutedEventArgs e)
 {
     using (var db = new Contexto())
     {
         ArmazenamentosList.ItemsSource = db.Armazenamentos.ToList();
         RemoverList.ItemsSource = db.Armazenamentos.ToList();
     }
 }
 /// <summary>
 /// Sobreescreve o metodo para recebero o argumento enviado pela ListPage.
 /// </summary>
 /// <param name="e"></param>
 protected override void OnNavigatedTo(NavigationEventArgs e)
 {
     ArmazenamentoApresentar.DataContext = e.Parameter;
     ArmazenamentoTodo = e.Parameter as Armazenamento;
     using (var db = new Contexto())
     {
         this.materialList.ItemsSource = db.Materiais.Where(x => x.ArmazenamentoId == ArmazenamentoTodo.Id);
         this.removeList.ItemsSource = db.Materiais.Where(x => x.ArmazenamentoId == ArmazenamentoTodo.Id);
     }
 }
 /// <summary>
 /// Função para adicionar os valores de um nova classe Armazenamento no banco de dados.
 /// </summary>
 /// <param name="nome">É o nome da nova classe Armazenamento</param>
 /// <param name="categoria">É qual categoria o Armazenamento pertence</param>
 /// <param name="comentario">É o comentário sobre a nova lista a ser criada</param>
 public void AdicionarBanco(string nome, string categoria, string comentario)
 {
     using (var db = new Contexto())
     {
         db.Armazenamentos.Add(new Armazenamento { Nome = nome,
                                                   Categorias = categoria,
                                                   Comentario = comentario,
                                                   DataCriacao = DateTime.Now });
         db.SaveChanges();
     }
 }
 /// <summary>
 /// Recebe os valores e cria um novo objeto no banco de dados do tipo Armazenamento.
 /// </summary>
 /// <param name="armazenamento">É o objeto ao qual o objeto Material pertence na relação de 1 para n</param>
 /// <param name="nome">É o nome do do Material.</param>
 /// <param name="quantidade">É quantos Materiais existe no deposito.</param>
 /// <param name="comentario">É um simples comentário.</param>
 /// <param name="validade">O  prazo mais proximo até a validade do material.</param>
 public void AdicionarBanco(Armazenamento armazenamento ,
                            string nome, 
                            int quantidade, 
                            string comentario, 
                            DateTime validade)
 {
     using(var db = new Contexto())
     {
         db.Materiais.Add(new Material {Nome = nome,
                                        Quantidade = quantidade,
                                        Comentario = comentario,
                                        Validade = validade,
                                        Armazenamentos = armazenamento,
                                        ArmazenamentoId = armazenamento.Id});
         db.SaveChanges();
     }
 }
        public App()
        {
            InitializeComponent();
            SplashFactory = (e) => new Views.Splash(e);

            #region App settings

            _settings = SettingsService.Instance;
            RequestedTheme = _settings.AppTheme;
            CacheMaxDuration = _settings.CacheMaxDuration;
            ShowShellBackButton = _settings.UseShellBackButton;

            #endregion

            using (var db = new Contexto())
            {
                db.Database.Migrate();
            }
        }
        /// <summary>
        /// Faz a modificação do banco de dados.
        /// </summary>
        /// <param name="materialModificar">O Material que se deseja modificar.</param>
        /// <param name="quantidade">O novo dado Quantidade a ser adicionado.</param>
        /// <param name="comentario">O novo dado Comentário a ser adicionado.</param>
        /// <param name="validade">O novo dado Validade a ser adicionado.</param>
        public void DBModificarMaterial(Material materialModificar, int quantidade, string comentario, DateTime validade)
        {
            Material valorModificar;
            using (var db = new Contexto())
            {
                valorModificar = db.Materiais.Where(x => x.Id == materialModificar.Id).FirstOrDefault<Material>();
            }

            if(valorModificar != null)
            {
                valorModificar.Quantidade = quantidade;
                valorModificar.Comentario = comentario;
                valorModificar.Validade = validade;
            }

            using (var dbContext = new Contexto())
            {
                dbContext.Entry(valorModificar).State = Microsoft.Data.Entity.EntityState.Modified;
                dbContext.SaveChanges();
            }
        }