Я пытался получить текущий экземпляр объекта, но значения внутри объекта, который я получаю, равны нулю, так как я использую autofac для внедрения метода.
--- RecurringJobService class--
public class RecurringJobService
{
public UnitOfWork _unitOfWork;
[RecurringJob("* * * * *")]
[Queue("jobs")]
[InjectionMethod]
public async Task SendMail(UnitOfWork unitOfWork)
{
var a = unitOfWork.StatementOfWorkRepository.GetAll();
}
}
Здесь я создал класс RecurringJobService и хочу получить значения UnitOfWork в методе SendMail, и с помощью автофака я сделал инъекцию через метод полученияэкземпляр объекта KUnitOfWork во время выполнения приложения, но не получает экземпляр классов внутренних параметров.
--- Startup.cs в .NetCore ---
var builder = new ContainerBuilder();
builder.RegisterType<RecurringJobService>()
.OnActivating(e => e.Instance.SendMail(new UnitOfWork(new KickOffContext(new DbContextOptions<KickOffContext>()))));
var container = builder.Build();
container.Resolve<RecurringJobService>();
Всякий раз, когда я пыталсядля вызова метода SendMail требуется объект UnitOfWork, но объекты внутреннего класса создаются как новые, поэтому объект UnitOfWork также дает значения Null. И, что я хочу, это получить объект KickOffContext (т.е. мой класс DBContext) внутри объекта UnitOfWork при запуске приложения.