实体框架 6 - 以编程方式设置默认架构
有没有办法以编程方式更改 EntityFramework 6 中的默认架构(数据库第一种方法)我看到了一些关于覆盖 OnModelCreation 方法的建议,
public partial class PDataContext : DbContext
{
public PDataContext ()
: base("name=DatabaseConnection")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.HasDefaultSchema("someSchema");
}
但它似乎不起作用。调用构造函数时不会调用 OnModelCreation 方法
Is there a way to change default schema in EntityFramework 6 programatically (db first approach) I saw some suggestion regarding overriding OnModelCreation method
public partial class PDataContext : DbContext
{
public PDataContext ()
: base("name=DatabaseConnection")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.HasDefaultSchema("someSchema");
}
But it doesnt seem to work. The method OnModelCreation is not beeing invoked when calling the constructor
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
OnModelCreating 仅针对代码优先运行。因此,您可以切换到 Code First来自现有数据库工作流程。
如果您首先使用旧的基于 edmx 的数据库,架构映射会嵌入到 edmx 中,您需要在那里操作映射。下面是一些旧代码:
实体框架架构重定向
OnModelCreating only runs for Code-First. So you can switch to the Code First from an Existing Database workflow.
If you are using the old edmx-based database first, the schema mapping is embedded in the edmx, and you'd need to manipulate the mapping there. Here's some old code to do that:
Entity Framework Schema Redirection