进行迁移后,我试图更新数据库,但我无法这样做。我有这个错误:
无法找到对象“dbo.Livro”,因为它不存在或您没有权限。
public class Autor
{
[Key]
public int AutorId { get; set; }
public virtual ICollection<Livro> Livros { get; set; }
public virtual ICollection<Avaliacao> Avaliacoes { get; set; }
}
public class Avaliacao
{
[Key]
public int AvaliacaoId{ get; set; }
public virtual Autor Autor { get; set; }
public virtual Livro Livro { get; set; }
}
public class Livro
{
[Key]
public int LivroId { get; set; }
public virtual Autor Autor { get; set; }
public virtual ICollection<Avaliacao> Avaliacoes { get; set; }
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Entity<Autor>().HasMany(p => p.Livros).WithRequired(p => p.Autor);
modelBuilder.Entity<Autor>().HasMany(p => p.Avaliacoes).WithRequired(p => p.Autor);
modelBuilder.Entity<Livro>().HasMany(p => p.Avaliacoes).WithRequired(p => p.Livro);
}
我首先阅读了有关创建表dbo.Livro的内容,但我读到这在Sql Server中是可行的,我不知道如何在EF代码中首先执行此操作...