Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Erro na classe LojaContext

Copiei o código tal qual esta no curso, e recebi o erro abaixo de compilação:

using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Alura.Loja.Testes.ConsoleApp
{
    public  class LojaContext : DbContext
    {
        public DbSet<Produto> Produtos { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
           optionsBuilder.UseSqlServer("Server=localhost\\SQLEXPRESS;Database=LojaDB;Trusted_Connection=true;"); 
        }
    }
}
CS0053    Acessibilidade inconsistente: tipo de propriedade "DbSet<Produto>" é menos acessível do que a propriedade "LojaContext.Produtos"    Alura.Loja.Testes.ConsoleApp

Porém está igual ao do curso e no curso não dá erro.. Uso VS 2017 enterprise e .net 4.6.1.

4 respostas
solução!

A classe Produto tem que ser Public para poder ser acessada por LojaContext.

Isso aí, Filipe!

Orlando, como a visibilidade da classe LojaContext está marcada como pública, a visibilidade das classes de suas propriedades (no caso, Produto) também devem seguir essa orientação.

Abraços!

Eu estava com o mesmo problema, é que a classe Produto veio do arquivo que baixei como internal, só mudar para public e deu certo.

Eu estava com a mesma duvida obrigado!!!