rick it's not supported Blazor. it'll be implemented on v4.4
the application template comes preconfigured to run Identity Server on your local environment. you need to change the local URLs to your production addresses. check the IdentityServerClientRedirectUris table, you'll see the localhost addresses, replace them with your prod addresses
because making property navigation is not best practise for a module. suite is designed to support both modules and app templates. but easy crm is not a module. if you are not working on a module template, you can change the final output of Suite to support ICollection<OtherEntity> OtherEntities
is it duplicate of https://support.abp.io/QA/Questions/1289/problem-with-navigation-properties-in-abp-suite?
ok. I'll check it again
ICollection<OrderLine> OrderLines
Product Product { get; set; }
these are not navigation properties
There are 2 razor pages used to change the register page.
1- Copy the Register.cshtml to Pages > Account folder of your web project.
2- Copy the Default.cshtml to Themes > Lepton > Layouts > Account folder of your web project.
https://gist.github.com/ebicoglu/bb28666a892646b245b2a525d5760bb7
1- You need to customize the register component to ask user "subdomain" name. and you need to modify the backend to send this data.
The register action URL is /api/account/register . it's in the Account.Pro module. \Volo.Abp.Account.Pro.Public.Application\Volo\Abp\Account\AccountAppService.cs
This is the register method of AccountAppService. You can override this method and add a Subdomain property to RegisterDto. check out https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Extending-Entities
public virtual async Task<IdentityUserDto> RegisterAsync(RegisterDto input)
{
await CheckSelfRegistrationAsync();
if (await UseCaptchaOnRegistration())
{
var reCaptchaValidator = await RecaptchaValidatorFactory.CreateAsync();
await reCaptchaValidator.ValidateAsync(input.CaptchaResponse);
}
await IdentityOptions.SetAsync();
var user = new IdentityUser(GuidGenerator.Create(), input.UserName, input.EmailAddress, CurrentTenant.Id);
input.MapExtraPropertiesTo(user);
(await UserManager.CreateAsync(user, input.Password)).CheckErrors();
(await UserManager.AddDefaultRolesAsync(user)).CheckErrors();
if (!user.EmailConfirmed)
{
await SendEmailConfirmationTokenAsync(user, input.AppName, input.ReturnUrl, input.ReturnUrlHash);
}
return ObjectMapper.Map<IdentityUser, IdentityUserDto>(user);
}
https://community.abp.io/articles/how-to-add-custom-property-to-the-user-entity-6ggxiddr
https://gist.github.com/mehmet-erim/b93759e97bd3f43bf98aca29bdd1fe66 https://support.abp.io/QA/Questions/160/How-to-customize-an-ABP-project
2- You can check out this topic https://support.abp.io/QA/Questions/1340/How-to-removedisable-validation-for-existing-DTO-object . In this topic user is trying to remove validation from an existing DTO. It's similar to your requirement. You are trying to replace an appservice with your own modified one.
sometimes Microsoft also broken!
https://docs.microsoft.com/en-us/aspnet/core/security/authorization/policies?view=aspnetcore-5.0
we already created an internal ticket for this issue