diff --git a/web/Areas/CTS/Controllers/CourseController.cs b/web/Areas/CTS/Controllers/CourseController.cs index f2a755c02..766e7573d 100644 --- a/web/Areas/CTS/Controllers/CourseController.cs +++ b/web/Areas/CTS/Controllers/CourseController.cs @@ -224,18 +224,14 @@ public async Task>> AddSessionCompetency return checkResult; } - foreach (var levelId in sessionComp.LevelIds) - { - var newSessionComp = new SessionCompetency() - { - CompetencyId = sessionComp.CompetencyId, - SessionId = sessionComp.SessionId, - LevelId = levelId, - RoleId = sessionComp.RoleId, - Order = sessionComp.Order ?? 0 - }; - context.Add(newSessionComp); - } + context.AddRange(sessionComp.LevelIds.Select(levelId => new SessionCompetency() + { + CompetencyId = sessionComp.CompetencyId, + SessionId = sessionComp.SessionId, + LevelId = levelId, + RoleId = sessionComp.RoleId, + Order = sessionComp.Order ?? 0 + })); await context.SaveChangesAsync(); var sessionComps = await context.SessionCompetencies @@ -270,18 +266,14 @@ public async Task>> UpdateSessionCompete { context.Remove(r); } - foreach (var l in toAdd) + context.AddRange(toAdd.Select(l => new SessionCompetency() { - var newSessionComp = new SessionCompetency() - { - CompetencyId = sessionComp.CompetencyId, - SessionId = sessionComp.SessionId, - LevelId = l, - RoleId = sessionComp.RoleId, - Order = sessionComp.Order ?? 0 - }; - context.Add(newSessionComp); - } + CompetencyId = sessionComp.CompetencyId, + SessionId = sessionComp.SessionId, + LevelId = l, + RoleId = sessionComp.RoleId, + Order = sessionComp.Order ?? 0 + })); await context.SaveChangesAsync(); await trans.CommitAsync(); } diff --git a/web/Areas/Directory/Models/IndividualSearchResult.cs b/web/Areas/Directory/Models/IndividualSearchResult.cs index 1c1265718..29e5830a5 100644 --- a/web/Areas/Directory/Models/IndividualSearchResult.cs +++ b/web/Areas/Directory/Models/IndividualSearchResult.cs @@ -126,11 +126,13 @@ public void LookupEmailHost(Classes.SQLContext.AAUDContext context) // Sanitize MailId to prevent SQL injection in OPENQUERY (which doesn't support parameters) var safeMailId = MailId.Replace("'", "''"); var query = $"SELECT * FROM OPENQUERY(UCDMothra,'SELECT (USERPART || ''@'' || HOSTPART) AS USERATHOST FROM MOTHRA.MAILIDS WHERE MAILID = ''{safeMailId}'' AND MAILSTATUS = ''A'' AND MAILTYPE = ''P''')"; - var results = context.Database.SqlQueryRaw(query).ToList(); - foreach (var r in results) + var hosts = context.Database.SqlQueryRaw(query) + .AsEnumerable() + .Select(r => r.Split("@")[^1]) + .ToList(); + if (hosts.Count > 0) { - var parts = r.Split("@"); - EmailHost = parts[^1]; + EmailHost = hosts[^1]; } } }