Eu faço uma classe para cada tabela, mais e quando for uma view no banco? como eu faço ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Eu faço uma classe para cada tabela, mais e quando for uma view no banco? como eu faço ?
Você deve criar uma classe (Entidade) com todas as propriedades que você deseja e utilize a anotação Table para definir o nome da sua view, exemplo abaixo:
[Table("vw_PessoaFuncionario")]
public class PessoaFuncionario
{
public int Id { get ;set; }
public string Nome { get ; set;}
}
Mais eu tenho que colocar o DbSet PessoaFuncionario ???
Sim Marcelo! É necessário colocar um DbSet como uma propriedade no Contexto, uma vez que, você só conseguirá acessá-la (exemplo abaixo), declarando ela.
using(ctx = new Contexto)
{
ctx.PessoaFuncionario.FirstOfDefault(c => c.Id == 1)
}
Mais quando eu rodar um migration ele não vai acabar criando a tabela?
Não há necessidade de criar uma migração, uma vez que trata-se de view, ou seja, as tabelas já estão criadas. Mapeamento de view, caracteriza-se database first e não code first.