ASP.NET Core 2.0-如何添加邮件服务

时间:2019-02-21 07:55:13

标签: entity-framework-core asp.net-core-2.0 dbcontext

我在带有Entity Framework 2.0的ASP.NET Core中有一个应用程序,我需要在服务中实现邮件调度程序。邮件服务必须获取数据库中的数据才能获取创建邮件的数据,因此它必须与dbContext交互。

我尝试了不同的方法来设置此服务,但没有成功。在不同情况下,我会显示一条错误消息:

  

“无法使用单例“ Maquetteur.Service.Scheduling.IScheduledTask”中的作用域服务“ Maquetteur.Data.MaquetteurContext”。”

根据我在Internet上阅读的内容,似乎我使用了错误的方式来设置此服务,但找不到合适的方法来处理...

这是我的服务代码的不同部分:

Startup.cs:

OServices.AddSingleton<IScheduledTask, MailingTask>();//daily mailing
OServices.AddScheduler((sender, args) => Console.Write(args.Exception.Message); args.SetObserved(); });

我的邮件班:

public class MailingTask : IScheduledTask
{
    private readonly MaquetteurContext OContext;

    public MailingTask(MaquetteurContext context)
    {
        this.OContext = context;
    }

   private async Task SendmailFromList(List<Entities.Mailing> AMailingList)
   {
       //do things with OContext + send mail
   }

您知道我如何解决我的问题吗?

0 个答案:

没有答案