使用EF查询多个模式

时间:2013-05-04 04:07:03

标签: entity-framework ef-code-first ef-migrations

我认为这应该很容易,但我无法弄清楚。 我有一个现有的(遗留)数据库,我正在使用EF查询,我创建了几个POCO类,只要针对'dbo'模式发出查询,一切都很好。问题是我无法针对任何其他架构发出查询,请说'foo'。 我尝试重写OnModelCreating并指定架构,但它似乎不起作用...... 有人知道解决方法吗? 对于这种特殊情况,我只需要查询功能(不是插入,更新等)。 如果它有任何仅适用于查询的东西,它也会很棒。 我正在使用针对.NET 4.0的EF 5 任何帮助都会被贬低。 谢谢!

2 个答案:

答案 0 :(得分:0)

没关系,经过多次尝试,我终于弄清楚了

protected override void OnModelCreating(DbModelBuilder modelBuilder) {
//don't know why, but for some reason this doesnt work (from scott gu's blog)
//modelBuilder.Entity<Foo>().ToTable("tblFoo", "bar");                        
//but this line of code does the trick ;)
 modelBuilder.Entity<Foo>().ToTable("bar.tblFoo");

}

答案 1 :(得分:0)

ToTable方法超载了传递Schema的选项

modelBuilder.Entity<Poco>().ToTable("tabX","schemaY");

知道“schema.table”有效,这很有意思,但由于存在重载,最好使用它。