複數化表名,我有以下控制器:的DbContext在訪問DB
private RACentralContext db = new RACentralContext();
private PeopleContext Peopledb = new PeopleContext();
public ViewResult StartRA()
{
var assessor = Peopledb.People.FirstOrDefault(x => x.PersonId == 6);
StartRiskAssessmentViewModel viewModel = new StartRiskAssessmentViewModel
{
RiskAssessment = new RiskAssessment(),
};
return View(viewModel);
}
當我運行它提供了以下錯誤的應用程序:
'Invalid object name 'dbo.People'
上下文類是:
public class RACentralContext : DbContext
{
public RACentralContext()
: base("name=RACDev")
{
}
public DbSet<RiskAssessment> RiskAssessments { get; set; }
public DbSet<Hazard> Hazards { get; set; }
public DbSet<PPE> PPEs { get; set; }
public DbSet<RiskAssessmentPPE> RiskAssessmentPPEs { get; set; }
public DbSet<PeopleExposed> PeopleExposeds { get; set; }
public DbSet<RiskAssessmentPeopleExposed> RiskAssessmentPeopleExposeds { get; set; }
public DbSet<RiskAssessmentHazard> RiskAssessmentHazards { get; set; }
public DbSet<ControlMeasure> ControlMeasures { get; set; }
public DbSet<Severity> Severitys { get; set; }
public DbSet<Likelihood> Likelihoods { get; set; }
public DbSet<AddControlMeasure> AddControlMeasures { get; set; }
public DbSet<Type> Types { get; set; }
public DbSet<SubType> SubTypes { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
}
public class PeopleContext : DbContext
{
public PeopleContext()
: base("name=PeopleContext")
{
}
public DbSet<Person> People { get; set; }
}
它試圖訪問實際的表名稱的puralization,我該如何阻止它做到這一點,只是得到它訪問dbo.Person不dbo.People?
表名添加一個'覆蓋無效OnModelCreating()''來... PeopleContext' – CodeCaster
Hvaing補充說,我得到這個錯誤:該模型支持的「PeopleContext自數據庫創建以來,上下文已發生變化。考慮使用Code First Migrations來更新數據庫(http://go.microsoft.com/fwlink/?LinkId=238269)。儘管運行update-database-force。 People上下文只有一個來自該數據庫的表,而不是我在另一個應用程序中使用的所有表 –