Ana içeriğe atla

Yeni Kullanıcılar İçin TenantId'yi Ayarlama

 Tenant2 ile oturum açtığınızda, User2 adında yeni bir kullanıcı oluşturmayı deneyin .

Herhangi bir hata almayacaksınız ancak sürpriz bir şekilde yeni oluşturulan kullanıcıyı listede görmeyeceksiniz. Kullanıcı2'ye ne oldu?

Geçişlerde TenantId için varsayılan değeri 1 olarak ayarladığımızdan , artık Kullanıcı2'nin TenantId olarak 1 değeri vardır ve Primary Tenant'ın bir üyesidir .

Yeni kullanıcıların TenantId'sini oturum açmış kullanıcıyla aynı değere ayarlamamız gerekiyor .

UserSaveHandler'ın SetInternalFields yöntemini aşağıdaki gibi değiştirin :

protected override void SetInternalFields()
{
    base.SetInternalFields();

    if (IsCreate)
    {
        Row.Source = "site";
        Row.IsActive = Row.IsActive ?? 1;
        if (!Permissions.HasPermission(PermissionKeys.Tenants) ||
            Row.TenantId == null)
        {
            Row.TenantId = User.GetTenantId();
        }
    }

    if (IsCreate || !Row.Password.IsEmptyOrNull())
    {
        string salt = null;
        Row.PasswordHash = GenerateHash(password, ref salt);
        Row.PasswordSalt = salt;
    }
}

Burada TenantId'i , kiracı yönetimi iznine sahip olmadığı sürece mevcut kullanıcıyla aynı değere ayarlıyoruz .

Şimdi yeni bir Kullanıcı2b kullanıcısı oluşturmayı deneyin ; bu sefer onu listede göreceksiniz.