using EntityFrameworkCore.Triggered; using IRaCIS.Core.Application.Service.Reading.Interface; namespace IRaCIS.Core.Application.Triggers { public class AddCRCCliniaclDataTrigger( IRepository _subjectVisitRepository, IClinicalAnswerService _iClinicalAnswerService) : IAfterSaveTrigger { //注意删除不能用扩展方法,必须用EF跟踪的实体 否则不能取到 SubjectVisitId public async Task AfterSave(ITriggerContext context, CancellationToken cancellationToken) { var subjectVisit = context.Entity; await _iClinicalAnswerService.AutoAddCRCClinical(new Service.Reading.Dto.AutoAddClinicalInDto() { TrialId = subjectVisit.TrialId, SubjectId = subjectVisit.SubjectId, }); } } }