Hi
In my module I've a distributed event (es. new order created) so my handler catch it and write on Db the new data. Now I use my module in 2 application connected to my Bus. In this scenario I've more then 1 write process
My goal is find a way to create handler for the event but enable / disable it to prevent multiple write data, which is the best way to do that?
Hi
we have created 2 app (angular apps) and we use a single Auth server.
Our goal is from app1 move to app2 without reinsert credentials.
Our landscape is confgured in multitenant enviroment with tenant resolver, so we have
The first App use a login embedded on Angular when I click in a link that redirect to App2 I land on home but I'm not already logged in. I click the login button but I need to re enter my credentials.
Is it possibile to login directly?
If I go on Auth server page after login I can see all my apps but only one (the first) if I click I can go inside already loggedin the second no
I see that if I configure auth server with this options and try to login from api (https://customer1.api.myapp.com) I can't login
"SelfUrl": "https://auth.myapp.com",
...
"TenantResolver": "https://{0}.auth.myapp.com"
If I remove the tenant resolver I see the login page from auth server I need to inser manually the tenant but it works
How can I add a HangFire Dashboar to my console APP/winService?
HI how can I add a recurring job at run time? and how can I remove it?
so I try to add via startup but I try to read polling intervall via appsettings.json but I can't do it
public PollingWorker()
{
//_options = ServiceProvider.GetService<IOptions<Dataptions>>().Value; --> Null exception
RecurringJobId = nameof(PollingWorker);
CronExpression = Cron.MinuteInterval(2);
}
I try to login from winfrom using IIdentityModelAuthenticationService it works fine on host but how can I set the tenant? How can get tenat Id from name?
using (var cs = _provider.CreateScope())
{
_tenant.Change(myTenantGuid, txtTenant.Text);
AsyncHelper.RunSync(() =>
_tokenManager.ObtainAccessToken(txtUser.Text, txtPassword.Text, txtUrl.Text));
var q = AsyncHelper.RunSync(() => _appService.GetAsync());
}
I've configure my app in multi tenant (with tenant resolver) and replace login component with local Angular UI the problem is that when I click login I'll be redirect to IDS (mvc page in place to my local Angular UI).
My App.Component.Ts is set to:
ngOnInit() {
this.replaceableComponentsService.add({
key: eAccountComponents.Login,
component: LoginComponent,
});
this.replaceableComponentsService.add({
key: eAccountComponents.Register,
component: RegisterComponent,
});
this.replaceableComponentsService.add({
key: eThemeLeptonComponents.AccountLayout,
component: AccountLayoutComponent,
});
}
It works fine if I don't use tenantResolver but when I switch to tenant roselver (using {0} for placeholder) local login not work
I try to use this scenario in multi tenant env: Angular IDS API
We follow the guide https://support.abp.io/QA/Questions/1552/Better-Documentation-for-Multi-Tenant-Subdomain-Resolver but not work.
We are able to login in IDS tenant (es t1.auth.mydomain.com) and open Api in tenant (t1.api.mydomain.com) but when I try to authorize my api client the auth login url is auth.mydomain.com and not t1.auth.mydomain.com so the authentication move to host and not to correct tenant.
on appsettings.json
For IDS
"SelfUrl": "https://{0}.auth.mydomain.com",
"TenantResolver": "https://{0}.auth.maydomain.com"
For API
"SelfUrl": "https://api.mydomain.com",
"TenantResolver": "https://{0}.api.maydomain.com"
"AuthServer": {
"Authority": "https://auth.maydomain.com",
"RequireHttpsMetadata": "true",
"SwaggerClientId": "client_Swagger",
"SwaggerClientSecret": "1234567"
},
on IDS ConfigService we put on top of module
.....
context.Services.AddAbpStrictRedirectUriValidator();
context.Services.AddAbpClientConfigurationValidator();
context.Services.AddAbpWildcardSubdomainCorsPolicyService();
Configure<AbpTenantResolveOptions>(options =>
{
options.AddDomainTenantResolver(configuration["App:TenantResolver"]);
});
Configure<IdentityServerOptions>(options =>
{
options.IssuerUri = configuration["App:SelfUrl"];
});
....
and on HttpApiHost
....
Configure<AbpTenantResolveOptions>(options =>
{
options.AddDomainTenantResolver(configuration["App:TenantResolver"]);
});
.....
ABP 5.3.1 Anuglar
I've create a new module now I need to test in multitenant.
I switch the tenant switch on API side but when I try to create a new tenant doesn't create the admin user
We have a module created via suite and now we have crate our nuget pack and NPM to reuse it in another module.
I try to find a way to solve a nightmare related to export module/proxy. All works fine until I need to call a proxy from module B that it came from module A.
I look into a SAAS module and I see that proxy folder is not inside SRC for angular but it was at root level
saas |--proxy |--src
I try to reproduce the same structure but via abp generate-proxy is not possibile... or don't find a way to do that. Looking inside the source I see that ad a ng-package.json to export proxy from module. I do the same but I still get the error module not exported.
My folder structure is ModuleA |--src |-----lib |--------proxy -> In this folder I put ng-package.json
So now I have my build module with proxy epoxrted... but it still no working.
Looking into the generated code I see that SAAS has @volo/abp.ng.saas/proxy into proxy folder but in my module I have @moduleA/src/lib/proxy. I search the documentation where find a way to create a module and NPM package but I don't find anything.
In all module angualr exists only the project foleder and not the entire project (I see that it is refere to a file tsconfig.base.json but where is this file?)
I've
follow the guide suggested on my prev ticket How-to-customize-IdentityServer-login-page and it'works fine on debug but when I move to production env the lepton theme ignore my csutom folder during buduling use only global.css
Is it normal?
2022-04-28 12:27:33.346 +02:00 [INF] Bundling __bundles/Lepton.Global.EBEE615D31F6CB72FC61AE315D1127D4.css (13 files)
2022-04-28 12:27:33.421 +02:00 [INF] > Minified /libs/abp/core/abp.css (1331 bytes -> 868 bytes)
2022-04-28 12:27:33.464 +02:00 [INF] > Minified /libs/@fortawesome/fontawesome-free/css/all.css (73577 bytes -> 53572 bytes)
2022-04-28 12:27:33.475 +02:00 [INF] > Minified /libs/@fortawesome/fontawesome-free/css/v4-shims.css (41312 bytes -> 33344 bytes)
2022-04-28 12:27:33.566 +02:00 [INF] > Minified /libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.css (54850 bytes -> 43189 bytes)
2022-04-28 12:27:33.573 +02:00 [INF] > Minified /libs/datatables.net-bs5/css/dataTables.bootstrap5.css (9115 bytes -> 8152 bytes)
2022-04-28 12:27:33.574 +02:00 [INF] > Minified /libs/abp/aspnetcore-mvc-ui-theme-shared/datatables/datatables-styles.css (464 bytes -> 379 bytes)
2022-04-28 12:27:33.658 +02:00 [INF] > Minified /global-styles.css (26 bytes -> 0 bytes)
2022-04-28 12:27:33.669 +02:00 [INF] Bundled __bundles/Lepton.Global.EBEE615D31F6CB72FC61AE315D1127D4.css (664474 bytes)
After login I still see the them6 (because is purple on left)