我正在尝试用oracle设置quartz.net AdoJobStore。我有一个有效的模式与石英表。但每次我在这段代码的最后一行都面临同样的异常“无法初始化DataSource:default”。
NameValueCollection properties = new NameValueCollection();
properties["quartz.scheduler.instanceName"] = "TestScheduler";
properties["quartz.scheduler.instanceId"] = "instance_one";
properties["quartz.jobStore.type"] = "Quartz.Impl.AdoJobStore.JobStoreTX, Quartz";
properties["quartz.jobStore.useProperties"] = "true";
properties["quartz.jobStore.dataSource"] = "default";
properties["quartz.jobStore.tablePrefix"] = "QRTZ_";
properties["quartz.dataSource.default.connectionString"] = "Data Source=//192.168.0.221:1521/ESPDB;User Id=quartz;Password=quartz";
properties["quartz.dataSource.default.provider"] = "OracleODP-20";
//
ISchedulerFactory schedulerFactory = new StdSchedulerFactory(properties);
IScheduler scheduler = await schedulerFactory.GetScheduler();
当我尝试使用配置文件时,我遇到了同样的异常。我正在使用版本3.0的石英。
尝试按如下方式修改最后一个属性
properties["quartz.dataSource.default.provider"] = "OracleODP";
它对我有用。我认为OracleODP-20可能是以前版本Quartz.net的Oracle数据提供者的旧价值,因为你可以阅读here。