我在一个解决方案中两个项目,在一个项目中使用Quartz没问题,在另一个项目中死活跑不起来。报错:“Quartz.Impl.StdSchedulerFactory”的类型初始值设定项引发异常。调试执行ISchedulerFactory sf = new StdSchedulerFactory();查看StdSchedulerFactory()发现存在一个异常。描述如下:“Quartz.Impl.StdSchedulerFactory.DefaultScheduler”引发了“System.TypeInitializationException”类型的异常
    base {System.SystemException}: {"“Quartz.Impl.StdSchedulerFactory”的类型初始值设定项引发异常。"}
    TypeName: "Quartz.Impl.StdSchedulerFactory"
代码很简单:
using Quartz;
using Quartz.Impl;namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }        private void Form1_Load(object sender, EventArgs e)
        {
            ISchedulerFactory sf = new StdSchedulerFactory();
            IScheduler sched = sf.GetScheduler();
        }
    }
}配置:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" />
  </configSections>
  <quartz>
    <add key="quartz.scheduler.instanceName" value="ExampleDefaultQuartzScheduler" />
    <add key="quartz.threadPool.type" value="Quartz.Simpl.SimpleThreadPool, Quartz" />
    <add key="quartz.threadPool.threadCount" value="10" />
    <add key="quartz.threadPool.threadPriority" value="2" />
    <add key="quartz.jobStore.misfireThreshold" value="60000" />
    <add key="quartz.jobStore.type" value="Quartz.Simpl.RAMJobStore, Quartz" />
  </quartz>
</configuration>请高手指点这是为什么?

解决方案 »

  1.   

    Quartz不知道是什么,自然没人顶。
      

  2.   

    StdSchedulerFactory是对org.quartz.SchedulerFactory接口的一个实现。是使用一套属性(NameValueCollection)来创建和初始化Quartz Scheduler。这些属性通常在文件中存储和加载。也可以通过编写程序来直接操作工厂。简单地调用工厂的getScheduler()就可以产生一个scheduler,初始化(以及它的ThreadPool、JobStore和DataSources),并且返回一个公共的接口。
      

  3.   

    quartz.net 是个开源的作业调度器,从java移植到.net的。问题自己解决了,是因为没有引用common.logging.dll引起的。权当散分了。。