こんにちは、私は本当に混乱しているので、助けてください。Unity を使用したインスタンスの作成に関して問題があります。作成したいインスタンスは Client タイプで、Job コンストラクター内で作成したいのですが、null 参照エラーが発生し続けます。他のケースでは、コントローラー内では解決がうまく機能するとしますが、このスケジュールされたジョブ内ではもう機能しません。
スケジューラーの作成は、Global.asax 内で行われます。
private void SchedulerStart()
{
ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
IScheduler スケジューラ = schedulerFactory.GetScheduler();
スケジューラ.開始();
IJobDetail ジョブ = JobBuilder.Create().WithIdentity("CheckForCompletedJobs").Build();
ITrigger トリガー = TriggerBuilder.Create()
.WithDailyTimeIntervalSchedule
(s =>
s.WithIntervalInHours(24)
.OnEveryDay()
.StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(4, 03))
)
。建てる();
scheduler.ScheduleJob(ジョブ、トリガー);
}
パブリック クラス CheckForCompletedJobs : IJob
{
プライベート読み取り専用 IPhotoEventRepository _photoEventRepository;
public CheckForCompletedJobs()
{
_clientRepository = DependencyResolver.Current.GetService();
}
public void Execute(IJobExecutionContext コンテキスト)
{
// clientRepository でのアクション
}
}