ABPCMS.Core/Authorization/Users/UserRegistrationManager.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Abp.Authorization.Users;
using Abp.Domain.Services;
using Abp.IdentityFramework;
using Abp.Runtime.Session;
using Abp.UI;
using ABPCMS.Authorization.Roles;
using ABPCMS.MultiTenancy;
using Microsoft.AspNet.Identity;
namespace ABPCMS.Authorization.Users
{
public class UserRegistrationManager : DomainService
{
public IAbpSession AbpSession { get; set; }
private readonly TenantManager _tenantManager;
private readonly UserManager _userManager;
private readonly RoleManager _roleManager;
public UserRegistrationManager(
TenantManager tenantManager,
UserManager userManager,
RoleManager roleManager)
{
_tenantManager = tenantManager;
_userManager = userManager;
_roleManager = roleManager;
AbpSession = NullAbpSession.Instance;
}
public async Task<User> RegisterAsync(string name, string surname, string emailAddress, string userName, string plainPassword, bool isEmailConfirmed)
{
CheckForTenant();
var tenant = await GetActiveTenantAsync();
var user = new User
{
TenantId = tenant.Id,
Name = name,
Surname = surname,
EmailAddress = emailAddress,
IsActive = true,
UserName = userName,
IsEmailConfirmed = true,
Roles = new List<UserRole>()
};
user.Password = new PasswordHasher().HashPassword(plainPassword);
foreach (var defaultRole in _roleManager.Roles.Where(r => r.IsDefault).ToList())
{
user.Roles.Add(new UserRole(tenant.Id, user.Id, defaultRole.Id));
}
后面还有 46 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
