【发布时间】:2014-01-08 21:12:27
【问题描述】:
要求是在 DbContext 可能调用的每个 Oracle 会话开始时使用 DbContext(DatabaseFirst 模式下的 EF 5)执行 sql 查询。
将它放在构造函数中会产生不一致的结果,因为在某些情况下,此 sql 查询根本没有按预期运行。
设置是 EF5 在 DBFirst 模式下使用 ODP.NET v12 托管驱动程序连接到 Oracle10gR2。
public partial class MyContext : DbContext
{
public MyContext(string connectionString)
: base(connectionString)
{
Database.ExecuteSqlCommand(Constants.SqlQuery);
}
}
我通过传递连接字符串来实例化上下文,因为连接字符串需要是动态的,如下所示:
using(var context = new MyContext(GetConnectionString()))
{
...
...
context.SaveChanges();
}
有没有办法确保在创建 Oracle 会话时始终运行此查询?
【问题讨论】:
标签: c# oracle entity-framework oracle10g entity-framework-5