fix: 登录 UserInfo 构建改为串行查询,避免 DbContext 并发异常
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
2188a3ce6e
commit
b0813ea12d
@ -460,13 +460,9 @@ public partial class AuthService(
|
||||
return cached;
|
||||
}
|
||||
|
||||
// 用户资料与权限并行,避免串行打两次慢查询
|
||||
var userTask = userService.GetAsync(userId, cancellationToken);
|
||||
var permissionsTask = userService.GetUserPermissionsAsync(userId, cancellationToken);
|
||||
await Task.WhenAll(userTask, permissionsTask);
|
||||
|
||||
var userInfo = await userTask;
|
||||
var permissions = await permissionsTask;
|
||||
// 同一 scoped DbContext 不能并行查询,必须串行
|
||||
var userInfo = await userService.GetAsync(userId, cancellationToken);
|
||||
var permissions = await userService.GetUserPermissionsAsync(userId, cancellationToken);
|
||||
var menus = await BuildMenusByPermissionsAsync(permissions, cancellationToken);
|
||||
|
||||
var dto = new UserInfoDto
|
||||
|
||||
Loading…
Reference in New Issue
Block a user