Olá! Minha dúvida referente ao Migrations é - como ele identifica os modelos? Se eu tiver um modelo em uma outra pasta, vai ficar de fora? Por que?
Olá! Minha dúvida referente ao Migrations é - como ele identifica os modelos? Se eu tiver um modelo em uma outra pasta, vai ficar de fora? Por que?
Olá Renato.
Tudo bem?
Entendo sua dúvida sobre como o Entity Framework Core identifica os modelos para as migrations. O Entity Framework Core utiliza o contexto do banco de dados, representado pela classe que herda de DbContext, para identificar os modelos. Dentro dessa classe, você define as propriedades do tipo DbSet<T>, onde T são os seus modelos.
Por exemplo, se você tiver uma classe ApplicationDbContext assim:
public class ApplicationDbContext : DbContext
{
public DbSet<User> Users { get; set; }
public DbSet<Product> Products { get; set; }
}
O Entity Framework Core vai identificar os modelos User e Product a partir das propriedades Users e Products respectivamente.
Quanto à sua dúvida sobre os modelos estarem em outra pasta, isso não é um problema. O que importa é que eles estejam referenciados no seu DbContext. Por exemplo, você pode ter a seguinte estrutura de pastas:
- Models
- User.cs
- Product.cs
- Data
- ApplicationDbContext.cs
Desde que as classes User e Product estejam corretamente referenciadas no ApplicationDbContext, o Entity Framework Core conseguirá identificá-las e incluí-las nas migrations.
Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.