Cir*_*rem 6 oracle entity-framework odp.net ef-code-first entity-framework-6
我正在使用Entity Framework 6 Code First连接到oracle数据库.EF使用"dbo"作为架构.我宁愿不指定架构,而是让Oracle从连接字符串中解析架构.
有没有办法从查询中省略"dbo"或任何架构?
示例给出:我想看"select*from table"而不是"select*from dbo.table".
目前,我正在解析userId的连接字符串并将其用作模式,但我宁愿不使用此技术.
FrankO的答案是正确的,因为您可以使用Fluent API指定默认架构.
此外,根据我的经验,这种方法可用于删除默认架构,允许Oracle在连接字符串中指定的情况下解析架构,或者您的公司策略是通过公共访问所有表代名词.
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.HasDefaultSchema(string.Empty);
}
Run Code Online (Sandbox Code Playgroud)
这将产生SQL FROM "MY_TABLE"而不是FROM "dbo"."MY_TABLE"
我正在使用:
您可以使用 Fluent API 声明默认架构,如下所示:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.HasDefaultSchema("your_schema_here");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
656 次 |
| 最近记录: |