hi
You can replace the EfCoreIdentityUserRepository to change the default sorting:
[Dependency(ReplaceServices = true)]
[ExposeServices(typeof(IIdentityUserRepository), typeof(EfCoreIdentityUserRepository), typeof(MyEfCoreIdentityUserRepository))]
public class MyEfCoreIdentityUserRepository : EfCoreIdentityUserRepository
{
public MyEfCoreIdentityUserRepository(IDbContextProvider<IIdentityDbContext> dbContextProvider)
: base(dbContextProvider)
{
}
public override async Task<List<IdentityUser>> GetListAsync(
string sorting = null,
int maxResultCount = int.MaxValue,
int skipCount = 0,
string filter = null,
bool includeDetails = false,
Guid? roleId = null,
Guid? organizationUnitId = null,
Guid? id = null,
string userName = null,
string phoneNumber = null,
string emailAddress = null,
string name = null,
string surname = null,
bool? isLockedOut = null,
bool? notActive = null,
bool? emailConfirmed = null,
bool? isExternal = null,
DateTime? maxCreationTime = null,
DateTime? minCreationTime = null,
DateTime? maxModifitionTime = null,
DateTime? minModifitionTime = null,
CancellationToken cancellationToken = default)
{
if (sorting.IsNullOrWhiteSpace())
{
sorting = nameof(IdentityUser.UserName);
}
return await base.GetListAsync(
sorting,
maxResultCount,
skipCount,
filter,
includeDetails,
roleId,
organizationUnitId,
id,
userName,
phoneNumber,
emailAddress,
name,
surname,
isLockedOut,
notActive,
emailConfirmed,
isExternal,
maxCreationTime,
minCreationTime,
maxModifitionTime,
minModifitionTime,
cancellationToken
);
}
}
Thanks
hi
The default sort way is order by CreationTime desc
Do you want to change it?
Thanks.
hi
This is IDE behavior. You can try to add code below to your solution's common.props file
<ItemGroup>
<None Remove="**\*.abppkg" />
<None Remove="**\*.abppkg.analyze.json" />
<Content Remove="$(UserProfile)\.nuget\packages\*\*\contentFiles\any\*\*.abppkg*" />
</ItemGroup>
Thanks.
hi
Can you share a demo project? liming.ma@volosoft.com I will test in my VS 2026.
Thanks
hi
Can you add the code below to your authserver project?
public override void ConfigureServices(ServiceConfigurationContext context)
{
context.Services.AddRazorPages(options =>
{
options.Conventions.AddPageApplicationModelConvention("/Account/Login", model =>
{
model.Filters.Add(new IgnoreAntiforgeryTokenAttribute());
});
});
}
Thanks.
hi
Account pro module will try to find AbpClaimTypes.ImpersonatorUserId in the current user. Then display the backto component.
if(currentUser.FindImpersonatorUserId() != null)
{
context.Menu.AddItem(
new ApplicationMenuItem(
"Account.BackToImpersonator",
accountResource["BackToImpersonator"],
url: "~/Account/BackToImpersonator",
icon: "fa fa-undo",
order: int.MaxValue - 1000).UseComponent<ImpersonationWithTextViewComponent>());
}
Can you display all claims on your index page?
How can I reproduce it in a new template? Or can you share a demo project?
Thanks.
hi
Can you replace IntrospectAccessToken with CheckTokenExpiration? We also made some performance improvements.
https://github.com/abpframework/abp/pull/24598
https://github.com/abpframework/abp/blob/dev/framework/src/Volo.Abp.AspNetCore/Microsoft/Extensions/DependencyInjection/CookieAuthenticationOptionsExtensions.cs
Thanks.
hi
You can add some settings for your new OAuth email sender.
Then add the UI page to allow the host and tenant to change it.
Try to retrieve the settings for the current tenant in your OauthEmailSender. You can now use host and tenant OAuth values.
https://github.com/abpframework/abp/blob/dev/modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo/Abp/SettingManagement/TenantSettingManagerExtensions.cs
https://abp.io/docs/latest/modules/setting-management#mvc-ui
Thanks.
hi
No problem. I have refunded your ticket.
Thanks.