[13:24:47 DBG] Waiting to acquire the distributed lock for saving external localizations... [13:24:47 INF] Saving external localizations...
My application often hangs on "Saving external localizations.." line in startup and will not accept any http requests.
I can't find which module outputs these lines to the console/logs.
Have you got any idea what could be causing this?
Both existing users and new registering users when using SSO are now forced to add a password as of version 9. This seems to be an undocumented breaking change. It also seems to ignore some configuration options (which I believe to be a bug).
This code used in both Login.cshtml.cs and Register.cshtml.cs, which redirects to the change password page only looks at the "EnableLocalLogin" setting.
This is a fundamental change in the behaviour of the login flow, why would anyone want to enter a password using SSO? It should be configurable.
I've laid this out very clearly as such that I've seen the duplicate closed thread on this matter where the customer was told to override the entire login/reg page. I believe this was not the correct course of action. They also were told that "We have not changed the login/register code recently.", this code was added in version 9.
if (await SettingProvider.IsTrueAsync(AccountSettingNames.EnableLocalLogin))
{
var user = await UserManager.FindByLoginAsync(loginInfo.LoginProvider, loginInfo.ProviderKey);
if (user != null && user.PasswordHash == null)
{
await StoreChangePasswordUser(user);
return RedirectToPage("./ChangePassword", new {
returnUrl = ReturnUrl ?? "/",
returnUrlHash = ReturnUrlHash
});
}
}
I'm currently looking into the best way to fully delete a tenant, including user data, permissions, all the ABP/Identity data.
Are there any built-in methods, or should I be doing this manually?
Working with all tenants in a single database.
I've created some custom features, it seems that I can edit them at the 'edition' level in the blazor interface, but not at the tenant level. The textbox is disabled.
public class MailerFeatures : FeatureDefinitionProvider
{
public static string GroupName = "Mailer";
public static string MaxEmail => FeatureName("MaxEmail");
public override void Define(IFeatureDefinitionContext context)
{
var group = context.AddGroup(GroupName);
var maxUsers = group.AddFeature(
MaxEmail,
defaultValue: "1",
valueType: new FreeTextStringValueType(
new NumericValueValidator(0, 1000000)), isVisibleToClients: true);
// Here I tried settings the providers, made no difference.
//maxUsers.WithProviders(new string[] { TenantFeatureValueProvider.ProviderName, EditionFeatureValueProvider.ProviderName });
}
private static string FeatureName(string name)
{
return $"{GroupName}.{name}";
}
}
This is the disabled textarea:
Hello,
I've got an app with a contact list where users can bulk insert Contact. They can select to add these contacts to one or many Group, each group having a ContactGroupMember record.
There's a domain event setup on the creation and deletion of ContactGroupMember which increments Group.Members integer property. I also need to add a record to a log of when users are added and removed from groups.
I'm not sure if I should be using domain events for this or not since it will create many requests to the database in a large queue when the users bulk insert. Should I be handling this entirely manually, or is there a way to disable the domain events when bulk importing, or grouping the events into a single event?
Thank you in advance :)