C# System.ArgumentNullException:值不能为null。参数名称:unitOfWork
我正在尝试创建一个新用户和一个角色,并将角色分配给该用户,如下所示C# System.ArgumentNullException:值不能为null。参数名称:unitOfWork,c#,aspnetboilerplate,C#,Aspnetboilerplate,我正在尝试创建一个新用户和一个角色,并将角色分配给该用户,如下所示 var user = new User { EmailAddress = email, Name = name, Surname = surName, UserName = email, Password = Guid.NewGuid().ToString(), TenantId = existingTenant.Id, CreatorUserId = AbpSession
var user = new User
{
EmailAddress = email,
Name = name,
Surname = surName,
UserName = email,
Password = Guid.NewGuid().ToString(),
TenantId = existingTenant.Id,
CreatorUserId = AbpSession.UserId
};
user.SetNormalizedNames();
var existingUserId = _userRepository.InsertOrUpdateAndGetId(user);
existingUser = _userRepository.Get(existingUserId);
if (existingRole == null || existingRole.Id == 0)
{
var newRole = new Role
{
DisplayName = role,
Name = role,
TenantId = existingTenant.Id,
CreatorUserId = AbpSession.UserId
};
newRole.SetNormalizedName();
var modifiedRole = _roleRepository.InsertOrUpdateAndGetId(newRole);
}
await _userManager.AddToRoleAsync(existingUser, role));
CurrentUnitOfWork.SaveChanges();
AddToRoleAsync始终导致System.ArgumentNullException:值不能为null。参数名称:unitOfWork
我不确定哪里出了问题。我假设由于CurrentUnitOfWork的值而引发异常。为了跟踪问题,请尝试使用IUnitOfWorkManager
private readonly IUnitOfWorkManager _unitOfWorkManager;
...
using (var unitOfWork = _unitOfWorkManager.Begin())
{
//your operation
unitOfWork.Complete();
}
我假设抛出异常是因为CurrentUnitOfWork的值。为了跟踪问题,请尝试使用IUnitOfWorkManager
private readonly IUnitOfWorkManager _unitOfWorkManager;
...
using (var unitOfWork = _unitOfWorkManager.Begin())
{
//your operation
unitOfWork.Complete();
}
错误会准确地告诉您代码的错误,并且您的snipet不会向我们显示您在何处分配unitOfWork,当您尝试添加角色时,unitOfWork为Null显示您的完整方法。。。我需要查看方法定义错误会准确地告诉您代码的错误,并且您的snipet不会向我们显示您在哪里分配unitOfWork,当您尝试添加角色时,unitOfWork为Null显示完整的方法。。。我需要查看方法定义