none
Erro Banco de Dados C# RRS feed

  • Pergunta

  • Olá, boa noite.

    Estou desenvolvendo um programa para a faculdade e como não tenho muita prática, estou tendo dificuldades em resolver alguns erros. No momento estou com problema ao tentar efetuar login no programa.

    O seguinte erro aparece apontado a Classe "Usuario":

    System.Data.Entity.Core.EntityCommandExecutionException: 'An error occurred while executing the command definition. See the inner exception for details.'
    
    Exceção Interna
    
    SqlException: Invalid object name 'dbo.Usuarios'.

    As configurações do Banco e da Classe Usuario (que está dentro da pasta Models) são essas:

    - Classe Usuario:

    {
    [Table(name:"Usuarios")]
        public class Usuario
        {
            public long Id { get; set; }
            //public String CPF { get; set; }
            public String Nome { get; set; }
            public String Email { get; set; }
            public String Senha { get; set; }
            public String DataNasc { get; set;}
         }
    }

    Banco:

    {
        public class Banco : DbContext
        {
            protected override void OnModelCreating(DbModelBuilder modelBuilder)
            {
                Database.SetInitializer<Banco>(null);
                base.OnModelCreating(modelBuilder);
                
            }
    
            public virtual DbSet<Usuario> Usuarios { get; set; }
    }

    Configuration.cs:

    internal sealed class Configuration : DbMigrationsConfiguration<Persistencia.Banco>
        {
            public Configuration()
            {
                AutomaticMigrationsEnabled = false;
                ContextKey = "Persistencia.Banco";
            }
    
            protected override void Seed(Persistencia.Banco context)
            {
            }
         }

    201805221421032_InitialCreate:

     public partial class InitialCreate : DbMigration
        {
            public override void Up()
            {
                (...)
                CreateTable(
                    "dbo.Usuarios",
                     c => new
                      {
                        Id = c.Long(nullable: false, identity: true),
                        CPF = c.String(),
                        Nome = c.String(),
                        Email = c.String(),
                        Senha = c.String(),
                    })
                    .PrimaryKey(t => t.Id);
    
    public override void Down()
            {
                       
                DropTable("dbo.Produtos");
                DropTable("dbo.Usuarios");
                (...)
            }
        }
    }

    Gerenciador.cs:

     public class Gerenciador
        {
    
            public static Usuario usuarioLogado;
            private Banco banco = new Banco();
    
    (...)
    public bool Login(String login, String senha)
            {
                Usuario usuario = this.banco.Usuarios.Where(user => user.Email.Equals(login) && user.Senha.Equals(senha)).FirstOrDefault();
                Gerenciador.usuarioLogado = usuario;
                
                return (usuario == null);
    (...)
            }
         }

    Desculpem, sei que ficou grande. Mas já olhei vários tutoriais e vídeos e não consegui resolver o problema.

    Sou iniciante, por favor me ajudem :(


    segunda-feira, 25 de junho de 2018 01:26

Todas as Respostas

  • Montei aqui o mesmo cenário, a unica coisa de diferente que fiz foi utilizar o comando no Package Manager:

    Update-database
    • Console App -
    • Framework 4.7.1
    • EntityFramework 6.2

    E tudo rodou tranquilamente

    Sei que é apenas um trabalho de faculdade! Mas vou te deixar uma leitura sobre o porquê não devemos criar um sistema de usuário e senha!

    https://www.saindodacaixinha.com.br/jwt-cookies-oauth-bearer/ #Segurança em primeiro lugar

    Abs


    Espero ter ajudado! Se consegui, não esquece de marcar no fórum como útil! Obrigado :)
    #fullstack dev - MCSA, MCTS and actually blogging at www.saindodacaixinha.com.br

    segunda-feira, 25 de junho de 2018 11:25