Quartz.NET 如何存储完全限定的程序集名称

本文关键字:程序集 NET 何存储 存储 Quartz | 更新日期: 2023-09-27 18:34:50

Quartz.NET 使用以下作业类名称:

ClassName, myAssembly

但是,myAssembly.dll 位于 GAC 中,因此在尝试运行作业时出现以下错误:

Could not load file or assembly 'myAssembly' or one of its dependencies. The system cannot find the file specified.

我真的需要它使用完全限定的名称,所以它将从 GAC 加载。

ClassName, myAssembly, Version=1.2.3.4, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxxxxx

有什么方法可以告诉 Quartz.NET 使用完整信息吗?我注意到在StdAdoDelegate的"GetStorableJobTypeName"中.cs版本号等被修剪掉了名称。

我应该只创建自己的自定义 StdAdoDelegate 并覆盖该函数吗?不太确定这里的最佳实践是什么。

Quartz.NET 如何存储完全限定的程序集名称

如果你真的想要这个,你应该覆盖GetStorableJobTypeName,因为你已经发现过。我强烈建议不要存储全名,因为这会导致很多问题。如果不出意外,则每当创建新版本的 DLL 时,绑定都会重定向。