C# Quartz.NET在方法中存在特定代码时不触发

C# Quartz.NET在方法中存在特定代码时不触发,c#,azure,quartz.net,azure-worker-roles,C#,Azure,Quartz.net,Azure Worker Roles,我正在尝试将Quartz.NET设置为Azure worker角色,以安排每日事件。经过多次尝试和错误,我发现在目标方法中包含一行代码会导致事件根本不会被触发 在构建的基础上,我有一个IJob类,它是被重写的Execute方法(通过调度器和触发器注册) 删除有问题的行(注释)后,我可以点击Trace.WriteLine语句上的断点。有了它,断点将永远不会被命中,输出也不会出现在其他地方 守则: public class MyUpdaterJob : IJob { public MyUpd

我正在尝试将Quartz.NET设置为Azure worker角色,以安排每日事件。经过多次尝试和错误,我发现在目标方法中包含一行代码会导致事件根本不会被触发

在构建的基础上,我有一个IJob类,它是被重写的Execute方法(通过调度器和触发器注册)

删除有问题的行(注释)后,我可以点击Trace.WriteLine语句上的断点。有了它,断点将永远不会被命中,输出也不会出现在其他地方

守则:

public class MyUpdaterJob : IJob
{
    public MyUpdaterJob()
    {
    }

    public void Execute(JobExecutionContext context)
    {
        Trace.WriteLine("-- Yay - Job called");

        // Removing this line will result in the breakpoint above being able to be hit
        MyUpdateWorker updateWorker = new MyUpdateWorker();

        var logDate = context.FireTimeUtc.Value.AddHours(-1);

        // [...]
    }
}
我完全不知道它可能会评估什么导致它不会触发这一事件。有什么建议吗

  • “MyUpdateWorker”在另一个库中
  • 这当前作为Azure工作角色运行

我想我应该检查MyUpdateWorker()类的构造函数,看看是否一切正常,也许在诊断日志中有一个日志,看看是否可以在其中找到一些指示原因的内容。通常我会看到Azure上缺少库的问题,因此可能缺少依赖项


只需要检查几件事(今天早上只喝了两杯咖啡,所以我还在热身)

我想我应该检查一下MyUpdateWorker()类的构造函数,看看是否一切正常,也许在诊断日志中有一个日志,看看是否可以在其中找到一些指示原因的东西。通常我会看到Azure上缺少库的问题,因此可能缺少依赖项


只需要检查几件事(今天早上只喝了两杯咖啡,所以我还在热身)

哇-这真是一件奇怪的事

由于这个项目的“有机”增长,包含IJob实现的库以前是一个控制台应用程序,几周前我将输出切换到“类库”

平台目标被设置为(只有可用的)x86。其他所有东西都编译为“任意CPU”,可能是64位


我记得我必须手动编辑.csproj文件来更新它,但是一旦以前的控制台项目now库被设置为任何CPU,它现在就可以正确触发了

哇-这真是个怪事

由于这个项目的“有机”增长,包含IJob实现的库以前是一个控制台应用程序,几周前我将输出切换到“类库”

平台目标被设置为(只有可用的)x86。其他所有东西都编译为“任意CPU”,可能是64位

我记得我必须手动编辑.csproj文件来更新它,但是一旦以前的控制台项目now库被设置为任何CPU,它现在就可以正确触发了