From cf98121993aacc42f5794f597417e671d91e36a3 Mon Sep 17 00:00:00 2001 From: harid Date: Mon, 18 May 2026 13:57:48 +0700 Subject: [PATCH] =?UTF-8?q?fix=20=E0=B8=A3=E0=B8=B0=E0=B8=9A=E0=B8=9A?= =?UTF-8?q?=E0=B9=81=E0=B8=88=E0=B9=89=E0=B8=87=20Error=20#2497?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Services/ImportBackgroundService.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Services/ImportBackgroundService.cs b/Services/ImportBackgroundService.cs index 0d3de83..6143171 100644 --- a/Services/ImportBackgroundService.cs +++ b/Services/ImportBackgroundService.cs @@ -598,8 +598,12 @@ public class ImportBackgroundService : BackgroundService // Save ScoreImport parent first to get its Id rec_import.ScoreImport = imported; await _context.SaveChangesAsync(); + var scoreImportId = imported.Id; _context.ChangeTracker.Clear(); + // Re-attach ScoreImport reference to avoid FK issues during bulk insert + var importRef = _context.Attach(new ScoreImport { Id = scoreImportId }).Entity; + // preload recruits (lightweight - only ExamId) var recruitsDict = await _context.Recruits .Where(x => x.RecruitImport.Id == rec_import.Id) @@ -669,7 +673,7 @@ public class ImportBackgroundService : BackgroundService r.LastUpdatedAt = DateTime.Now; r.LastUpdateUserId = job.UserId ?? ""; r.LastUpdateFullName = job.FullName ?? "System Administrator"; - r.ScoreImport = imported; + r.ScoreImport = importRef; batchScores.Add(r); }