1
resposta

Outra maneira de adicionar vários livros

No exempo é mostrado uma forma de adicionar vários produtos, utilizei os conhecimentos de List dos cursos anteriores de C# e realizei essa abordagem aqui.

 private static void GravarUsandoEntity()
        {
            var livros = new List<Produto>() 
            {
                new Produto("Ruff Gannor", "Livros",15.99),
                new Produto("Senhor dos Aneis e as Duas Torres", "Livros",24.90),
                new Produto("Senhor dos Aneis", "Livros",19.90),
                new Produto("A menina que roubava livros", "Livros", 29.90),
                new Produto("O caçador de Pipas", "Livros",15.90),
                new Produto("Pai rico pai pobre", "Livros",57.90),
            };
            using (var contexto = new LojaContext())
            {
                contexto.Produtos.AddRange(livros);
                contexto.SaveChanges();
            }
        }

Para a criação da lista foi necessário a criação de um construtor da classe Produto com seus parâmetros, ficando dessa forma:


        public Produto(string nome, string categoria, double preco)
        {
            if(nome==""|| nome == null)
            {
                throw new ArgumentException("O argumento nome deve ser preenchido.", nameof(nome));
            }
            if (categoria == "" || categoria == null)
            {
                throw new ArgumentException("O argumento categoria deve ser preenchido.", nameof(categoria));
            }
            if (preco <= 0)
            {
                throw new ArgumentException("O argumento preco deve ser preenchido.", nameof(preco));
            }
            Nome = nome;
            Categoria = categoria;
            Preco = preco;
        }
1 resposta

Olá Fernando, tudo bem?

Realmente, é uma outra possibilidade e mais elegante.

A decisão de fazer da outra maneira "mais simples" é mais para mostrar o uso da ferramenta ao invés de se aprofundar na linguagem em sí. Mas essa foi realmente uma ótima saída, tanto que é mais comum utilizar listas por conter vários métodos e várias possibilidades com o Linq.

Muito obrigado pela colaboração e bons estudos!