【问题标题】:DbContext ASP.Net and Quartz.netDbContext ASP.Net 和 Quartz.net
【发布时间】:2012-06-06 08:41:24
【问题描述】:

我刚刚使用 Quartz.net 创建了一个类似作业的 cron 作业。对于测试,它对数据库执行一个简单的请求。它只是添加了一个字段。
我有一个 dbcontext:

私有 TotoContext db = new TotoContext();

在我的工作中,我有:

var totos = from db.totos 中的 u.name == name select u;
Toto[] totoArray = totos.ToArray();

在我的 web.config 中,我有一个特殊字段,其中包含我的特定连接字符串等(“TotoContext”)。
但是当我创建一个新的 dbContext 时,它似乎没有使用好的连接字符串。在手表中,connectionString 未与“TotoContext”链接。
我在以下位置初始化我的工作:

公共覆盖 bool OnStart()

我有一个特定的 Web.toto.config 文件,其中包含用于构建的 connectionString。

为什么不使用好的connectionString?!

非常感谢!

编辑:如果我在我的 db.Database.Connection.ConnectionString 中手动设置 connectionString,它可以工作。但是为什么它不使用 web.config ConnectionString。

【问题讨论】:

    标签: asp.net azure quartz.net dbcontext


    【解决方案1】:

    如果您使用完整的 IIS 模式(Web 角色的默认配置),则角色入口点中的 web.config 将被忽略。因此建议将所有 ASP.NET 特定的初始化任务放在 Global.asax 的 Application_Start 方法中。角色入口点用于在 ASP.NET 应用程序启动之前做一些事情,例如修改 IIS 配置。在 Global.asax 中,web.config(和配置转换)受到尊重。

    【讨论】:

      【解决方案2】:

      我刚刚发现它为什么不使用 Web.config:https://stackoverflow.com/a/10153375/1396323
      但下一个问题是如何根据构建配置(Debug、Release 等)以及在哪里存储不同的 connectionString?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多