Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从asp.net zero中的标识表中获取记录_C#_Asp.net Core - Fatal编程技术网

C# 如何从asp.net zero中的标识表中获取记录

C# 如何从asp.net zero中的标识表中获取记录,c#,asp.net-core,C#,Asp.net Core,我想从标识表(例如,AspNetUsers,AspNetRoles)中获取记录,我正在使用ASP.Net样板框架 我已经使用IRepository界面为标识表创建了存储库,如: private readonly IRepository<User,long> _userRepository; private readonly IRepository<Role> _roleRepository; public AccountController(IRepository<

我想从标识表(例如,
AspNetUsers
AspNetRoles
)中获取记录,我正在使用ASP.Net样板框架

我已经使用
IRepository
界面为标识表创建了存储库,如:

private readonly IRepository<User,long> _userRepository;
private readonly IRepository<Role> _roleRepository;

public AccountController(IRepository<User,long> userRepository,
        IRepository<Role> roleRepository)
{
    _userRepository = userRepository;
    _roleRepository = roleRepository;
}
我从
AspNetRoles
表中获得了零条记录,但数据库中有一些记录。所以,我的第一个问题是,我们是否可以为标识表创建和使用存储库

我也使用过类似于
GetUsersInOrganizationunit()
的管理方法,但它也给出了相同的结果(即未找到任何记录)


那么,还有比上述更好的解决方案吗?

请尝试按工作单元包装存储库的使用。大概是这样的:

    private readonly IUnitOfWorkManager _unitOfWorkManager;
    private readonly IRepository<User,long> _userRepository;
    private readonly IRepository<Role> _roleRepository;

    public AccountController(IUnitOfWorkManager unitOfWorkManager,
        IRepository<User,long> userRepository,
        IRepository<Role> roleRepository)
    {
        _unitOfWorkManager = unitOfWorkManager;
        _userRepository = userRepository;
        _roleRepository = roleRepository;
    }

    public override async Task YourMethod() {
        using (_unitOfWorkManager.Current.SetTenantId(tenant.Id)) {
                 var roles =_roleRepository.GetAll();
                 var users =_userRepository.GetAll();
             }
    }
专用只读IUnitOfWorkManager\u unitOfWorkManager;
私有只读IRepository用户存储库;
私人只读电子存储;
公共账户控制员(IUnitOfWorkManager unitOfWorkManager,
IRepository用户存储库,
i假定角色(假定)
{
_unitOfWorkManager=unitOfWorkManager;
_userRepository=userRepository;
_roleRepository=roleRepository;
}
公共重写异步任务方法(){
使用(_unitOfWorkManager.Current.SetTenantId(tenant.Id)){
var roles=_roleRepository.GetAll();
var users=_userRepository.GetAll();
}
}

您必须向我们真正展示存储库代码,否则我们无法知道实际发生了什么。
OrganizationUnit usersInOrganization = new OrganizationUnit();
usersInOrganization.TenantId = tenant.Id;
var users = await_userManager.GetUsersInOrganizationUnit(usersInOrganization); 
    private readonly IUnitOfWorkManager _unitOfWorkManager;
    private readonly IRepository<User,long> _userRepository;
    private readonly IRepository<Role> _roleRepository;

    public AccountController(IUnitOfWorkManager unitOfWorkManager,
        IRepository<User,long> userRepository,
        IRepository<Role> roleRepository)
    {
        _unitOfWorkManager = unitOfWorkManager;
        _userRepository = userRepository;
        _roleRepository = roleRepository;
    }

    public override async Task YourMethod() {
        using (_unitOfWorkManager.Current.SetTenantId(tenant.Id)) {
                 var roles =_roleRepository.GetAll();
                 var users =_userRepository.GetAll();
             }
    }