2

我正在尝试在我的网络项目中使用 Quartz.net。我这样配置我的应用程序:

<job>

  <name>CRMMoreThanOneJob</name>
  <group>jobGroup1</group>
  <job-type>ReportingPortalBLL.Jobs.CRMCalledMoreThanOneJob, ReportingPortalBLL.Jobs</job-type>

  <durable>true</durable>
  <recover>false</recover>
  <job-data-map>
    <entry>
      <key>MessageToLog</key>
      <value>Hello from MyJob</value>
    </entry>
  </job-data-map>
</job>

但由于工作类型声明,它不起作用。我的 Job 类的定义如下,它的命名空间是 ReportingPortalBll.Jobs

namespace ReportingPortalBLL.Jobs
{
 public class CRMCalledMoreThanOneJob:IJob
 { .
   .
 }
}

在我将其更改为 ReportingPortalBLL.Jobs.CRMCalledMoreThanOneJob 后,ReportingPortalBLL(没有 .Job)运行良好。

我查看了文档,但找不到 job-type 参数的第二个值表示的内容。我应该在第二个参数上写什么?下面表示的第二个值是什么意思?我将在我的其他项目中使用 Quartz,所以很高兴知道如何轻松配置它。

<job-type>Namespace.Job1, secondValue</job-type>
4

1 回答 1

3

secondValue 对应于程序集名称。

如果您浏览quartz.net 的源代码,您可以看到作业类型作为参数传递给Type.GetType,并且Type.GetType 接受程序集限定名称。类型的程序集限定名称由类型名称(包括其命名空间)、逗号和程序集的显示名称组成。

有关更多信息,请参阅这些链接 http://msdn.microsoft.com/en-us/library/c5cf8k43.aspx http://msdn.microsoft.com/en-us/library/system.type.assemblyqualifiedname.aspx

于 2013-02-07T16:58:44.183 回答