Compare commits

..

No commits in common. "28e367eb88cc35a961448f12115637f3b129df16" and "2be6757e236dbb8d2c35da68b6680c89a4f11ffb" have entirely different histories.

1 changed files with 11 additions and 10 deletions

View File

@ -34,7 +34,6 @@ namespace IRaCIS.Core.Application
IRepository<ReadingCriterionPage> _readingCriterionPageRepository, IRepository<ReadingCriterionPage> _readingCriterionPageRepository,
IRepository<SystemCriterionKeyFile> _systemCriterionKeyFileRepository, IRepository<SystemCriterionKeyFile> _systemCriterionKeyFileRepository,
IOSSService _oSSService, IOSSService _oSSService,
IRepository<TrialCriterionKeyFile> _trialCriterionKeyFileRepository, IRepository<TrialCriterionKeyFile> _trialCriterionKeyFileRepository,
IOrganInfoService _iOrganInfoService, IOrganInfoService _iOrganInfoService,
IRepository<TrialBodyPart> _trialBodyPartRepository, IRepository<TrialBodyPart> _trialBodyPartRepository,
@ -61,27 +60,29 @@ namespace IRaCIS.Core.Application
/// <returns></returns> /// <returns></returns>
public async Task ReplaceSubject() public async Task ReplaceSubject()
{ {
// 使用 AsTracking() 确保变更追踪开启 // 查完整实体(不能只查匿名类,匿名类无实体追踪)
var trialList = await _trialRepository var trialList = await _trialRepository.AsQueryable().ToListAsync();
.AsQueryable()
.AsTracking() // 显式启用追踪
.ToListAsync();
foreach (var data in trialList) foreach (var trial in trialList)
{ {
if (data.TrialObjectNameList == null || !data.TrialObjectNameList.Any()) if (trial.TrialObjectNameList == null || !trial.TrialObjectNameList.Any())
continue; continue;
foreach (var item in data.TrialObjectNameList) foreach (var item in trial.TrialObjectNameList)
{ {
//item.TrialName = item.TrialName
// .Replace("受试者", "试验参与者")
// .Replace("Subject", "Participant");
item.Name = item.Name item.Name = item.Name
.Replace("受试者", "试验参与者") .Replace("受试者", "试验参与者")
.Replace("Subject", "Participant"); .Replace("Subject", "Participant");
} }
// 不调用 Update(),直接 SaveChanges
} }
// EF自动把List序列化为JSON字符串更新到数据库
await _trialRepository.SaveChangesAsync(); await _trialRepository.SaveChangesAsync();
} }
/// <summary> /// <summary>