我正在使用Visual Studio 2010,mvc 4.我正在应用模型第一种方法,并且我有一些类的层次结构。 VS脚手架适用于所有其他类甚至是层次结构的基类,但是子类不能使脚手架工作。我看到并理解只有基类进入我的dbcontext实现,并且我开始害怕使用子类直接使用脚手架的无效可能性。 我错过了什么,还是应该停止搜索并开始手动制作?
答案 0 :(得分:1)
到目前为止,我发现并且有兴趣解决方案,但我仍然在寻找不那么棘手的东西。让我解释一下: EDMX只向ModelContainer添加基类: public DbSet Personas {get;组; } 通过context.Personas.Add()可以很好地从/向数据库读取/写入数据。 但是当我尝试为ChildClass模型制作控制器/视图时,脚手架会查找数据库,但它并不存在。 我棘手的解决方案:创建另一个部分类ModelContainer并在那里添加那些DbSet。请记住,原件是自动生成的,无法永久手动编辑...嗯...... 更好的是,您可以将其添加到原始的ModeloContainer,编译然后使用scaffolding。它可以正常工作,不再需要它,所以如果你再次从EDMX重新生成Container类就没问题。
但请,如果有人知道更好或更正确的方式,请点击此处。