Logger.LogInformation($"EmailContent: {emailContent}"); // logger here
What's the log content
Hi,
It works for me
My steps:
AbpDistributedEntityEventOptions in the IdentityServiceDomainModuleConfigure<AbpDistributedEntityEventOptions>(options =>
{
options.AutoEventSelectors.Add<OrganizationUnit>();
options.EtoMappings.Add<OrganizationUnit, OrganizationUnitEto>();
});
CssDepartmentSynchronizer to ProductServicepublic class CssDepartmentSynchronizer :
EntitySynchronizer<Product, OrganizationUnitEto>
{
private readonly ILogger<CssDepartmentSynchronizer> _logger;
public CssDepartmentSynchronizer(
IObjectMapper objectMapper,
IRepository<Product> repository,
ILogger<CssDepartmentSynchronizer> logger) : base(objectMapper, repository)
{
_logger = logger;
}
public override Task HandleEventAsync(EntityCreatedEto<OrganizationUnitEto> eventData)
{
_logger.LogInformation("CssDepartmentSynchronizer EntityCreatedEto");
//return base.HandleEventAsync(eventData);
return Task.CompletedTask;
}
public override Task HandleEventAsync(EntityDeletedEto<OrganizationUnitEto> eventData)
{
_logger.LogInformation("CssDepartmentSynchronizer EntityDeletedEto");
//return base.HandleEventAsync(eventData);
return Task.CompletedTask;
}
public override Task HandleEventAsync(EntityUpdatedEto<OrganizationUnitEto> eventData)
{
_logger.LogInformation("CssDepartmentSynchronizer EntityUpdatedEto");
//return base.HandleEventAsync(eventData);
return Task.CompletedTask;
}
protected override async Task<Product?> FindLocalEntityAsync(OrganizationUnitEto eto)
{
_logger.LogInformation("CssDepartmentSynchronizer FindLocalEntityAsync");
var entity = await Repository.FindAsync(d => d.Id == eto.Id);
if (entity == null)
_logger.LogInformation("CssDepartmentSynchronizer not found");
else
_logger.LogInformation("CssDepartmentSynchronizer found");
return entity;
}
}
I will check it
Hi,
You can try
Configure<AbpAccountOptions>(options =>
{
options.IsTenantMultiDomain = true;
options.GetTenantDomain = (httpContext, info) => Task.FromResult(string.IsNullOrWhiteSpace(info.Name) ? $"https://getabp.net" : $"https://{info.Name}.getabp.net");
});
Move to https://support.abp.io/QA/Questions/7431/Creating-new-table-from-abp-suite-is-giving-error
Hi
See: https://support.abp.io/QA/Questions/3286/How-can-I-customise-the-login-page-in-ABP-Commercial
You can download the account module source code for the latest login page code
Hi,
You can try:
public class IndexModel : QwPageModel
{
public IOptions<LeptonXThemeMvcOptions> Options { get; }
public IndexModel(IOptions<LeptonXThemeMvcOptions> options)
{
Options = options;
}
public void OnGet()
{
Options.Value.ApplicationLayout = Options.Value.ApplicationLayout == LeptonXMvcLayouts.SideMenu ? LeptonXMvcLayouts.TopMenu : LeptonXMvcLayouts.SideMenu;
}
}