EF 6(代码优先)是否能够使用与当前数据库用户关联的默认架构?

时间:2012-12-03 08:43:27

标签: entity-framework entity-framework-6

很高兴知道EF 6中支持HasDefaultSchema方法,因此我可以设置EF可以使用的模式。但是,我想知道是否有可能在生成SQL语句时使EF消除模式前缀(例如,生成“select * from TableA”而不是“select * from dbo.TableA”),以便数据库引擎将使用默认模式与当前数据库用户关联。

我有几个数据库用户,每个用户都有一个唯一的模式集作为其默认模式。我想我可以使用他们的特定用户名,密码和相同的SQL语句“SELECT * FROM TableA”分别获得每个用户的正确数据。

感谢。

1 个答案:

答案 0 :(得分:0)

试试这个

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);
    modelBuilder.HasDefaultSchema("");
}