Quartz.net和Oracle 11支持

时间:2015-03-18 12:00:00

标签: quartz-scheduler quartz.net

使用Quartz.net时,我们需要同时支持Sql Server和Oracle。在之前的冲刺中,我们使用Sql Server作为数据存储区开发,现在我正在尝试切换到Oracle。我们使用Oracle v11.2。我设置了提供者:

<add key="quartz.dataSource.default.provider" value="OracleODP-1123-40" />

我确保重定向到我打算使用的Oracle驱动程序的确切版本:

  <dependentAssembly>
    <assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89b483f429c47342" culture="neutral"/>
    <bindingRedirect oldVersion="0.0.0.0-4.112.3.0" newVersion="4.112.4.0"/>
  </dependentAssembly>

不幸的是,当Quartz启动时,我得到了异常,似乎是由于将booleans .Net参数转换为布尔db值(我实际上使用Quartz源代码调试了这个)。当我调试,并用0或1替换布尔值,然后启动运行正常。

所以这让我想知道,Quartz仍然支持Oracle 11吗?还是有一些我忽略的配置?作为一项实验,我还尝试使用ODP托管提供商:

<add key="quartz.dataSource.default.provider" value="OracleODPManaged-1211-40" />

但问题相同。

非常感谢任何反馈。

2 个答案:

答案 0 :(得分:0)

知道了。你需要

<add key="quartz.jobStore.driverDelegateType" value="Quartz.Impl.AdoJobStore.OracleDelegate, Quartz" />

答案 1 :(得分:0)

是;仍然支持Oracle。 但是他们更改了较新版本中的提供程序值。 因此,您必须更改提供程序的值,如下所示:

<add key="quartz.dataSource.default.provider" value="OracleODP" />