Skip to content

Lookup服务:使用 .Result 异步方法获取值,会导致死锁问题。 #4804

@SmartCode-X

Description

@SmartCode-X

Is there an existing issue for this?

  • I have searched the existing issues

Is your feature request related to a problem? Please describe the problem.

public class LookupServiceBaseEntity(ISysUserService sysUserService) : LookupServiceBase
{
private ISysUserService SysUserService { get; } = sysUserService;

public override IEnumerable<SelectedItem>? GetItemsByKey(string? key, object? data)
{
    IEnumerable<SelectedItem>? items = null;
    if (key == "Foo.Complete")
    {
        var users = SysUserService.GetAllUsersAsync().Result;
        //var localizer = Provider.GetRequiredService<IStringLocalizer<Foo>>();//多语言支持
        items = users.Select(user => new SelectedItem
        { Value = user.Id.ToString(), Text = user.Name }).ToList();

    }
    return items;
}

}
1

Describe the solution you'd like

可以 使用 .Result 异步方法获取值。

Additional context

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions