Activities of "liangshiwei"

Hi,

Can you try this?

var globalContext = new Dictionary<string, object>
{
    { "model", model }
};
return await _templateRenderer.RenderAsync(input.TemplateName, model, currentLanguage, globalContext);

Hi,

You can do it yourself.

ok

Hi,

You can get TenantName from the TenantCreatedEto.

[ExposeServices(typeof(RegisterModel))]
public class MyRegisterModel : RegisterModel
{
    public MyRegisterModel(IAuthenticationSchemeProvider schemeProvider, IOptions<AbpAccountOptions> accountOptions, IAccountExternalProviderAppService accountExternalProviderAppService, ICurrentPrincipalAccessor currentPrincipalAccessor, IHttpClientFactory httpClientFactory) : base(schemeProvider, accountOptions, accountExternalProviderAppService, currentPrincipalAccessor, httpClientFactory)
    {
    }

    public override async Task<IActionResult> OnGetAsync()
    {
        .......
        if (IsExternalLogin)
        {
            ......
            var emailClaim = identity.FindFirst(AbpClaimTypes.Email) ?? identity.FindFirst(ClaimTypes.Email);
            if (emailClaim == null)
            {
                throw new AbpException("Could not find an email address for the user from the external login info!");
            }
            
            var emailAddress = emailClaim.Value;
            
            // you can check the emailAddress here
 
            ......
            
        }

        ......
    }
}

Hi,

You can check the email of the external user and response unauthorized(401) if it's not allowed.

So is there any other setting which might be causing this issue 'MS-ASPNETCORE-TOKEN' does not match the expected pairing token '824e115b-0788-4d57-a6e3-f8eff97b788c', request rejected.

No other reason, you can see the IIS Middleware source code https://github.com/dotnet/aspnetcore/blob/main/src/Servers/IIS/IISIntegration/src/IISMiddleware.cs#L105

That's why when using IIS to reverse proxy asp.net core, you should only access it via IIS

Hi,

You can make it yourself

You can add a user menu:

https://docs.abp.io/en/abp/latest/UI/Blazor/Navigation-Menu#standard-menus

The user menu can be a Blazor component, for example:

context.Menu.Items.Add(
  new ApplicationMenuItem("LinkedAccounts", "Linked Accounts", "#")
    .UseComponent(typeof(LinkedAccountComponent)));

Then you can inject the IIdentityLinkUserAppService service to get the account list.

Hi,

Sorry, maybe I misunderstand.

Do you mean to open the linked account modal directly instead of redirecting to my account first? Right?

Hi,

It works for me:

You can see the video https://drive.google.com/file/d/10APitqORLwtrMYb7MAo4J8W-XWsMmxYg/view?usp=sharing

Configure<AbpAspNetCoreMultiTenancyOptions>(options =>
{
    options.MultiTenancyMiddlewareErrorPageBuilder = async (httpContext, exception) =>
    {
        foreach (var cookie in httpContext.Request.Cookies)
        {
            httpContext.Response.Cookies.Delete(cookie.Key);
        }
        httpContext.Response.Redirect(httpContext.Request.GetEncodedPathAndQuery());
        return true;
    };
});
Showing 2291 to 2300 of 6693 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.1.0-preview. Updated on November 07, 2025, 08:20