Hi @maliming,
I'm little confused here. Aren't the background jobs handled by hangfire when abp hangfire package is added?
Hi,
Background job has Timer.Period
property which controls when to run the job. But also I have hangfire connected which has its own way of running jobs via CRON expression.
Here is an example:
// At 1:50 of every 7th day
RecurringJob.AddOrUpdate<ShipmentAddressLocationCoordinatesWorker>(job => job.Start(), "50 1 * * 0", TimeZoneInfo.Utc);
inside the ShipmentAddressLocationCoordinatesWorker
constuctor:
Timer.Period = 1000 * 60 * 60 * 24 * 7; // 7 Days
The problem is, I have no idea when the job's DoWork
function will be executed!
I checked the logs and saw that this job never executed. Can someone help me on understanding how to correctly use Timer.Period
property? :)
I have hosted AspNetCore app as Azure App service. I have done all the things right but production app still throws developer exceptions.
Code in Configure
function:
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseStatusCodePagesWithRedirects("~/Error?statusCode={0}");
app.UseExceptionHandler("/Error");
}
Azure App Service Configuration: ASPNETCORE_ENVIRONMENT : Production
Also tried to delete environment variable on azure as it points to Production by default but still no luck
Thanks for clarification @ismcagdas :)
@demirmusa, @smry,
I compared AspNetZero with abp commercial, and huge number of features are missing from abp commercial and it is in early phase. So best thing for us would be to stick with AspNetZero.
But is there a migration guide on how we can easily upgrade AbpTables to abp commercial? Or some migration utility?
Most importantly, what is the future of AspNetZero now, since new abp commercial is out and most of the framework developers would be more interested in the shiny new thing?
Hi,
We are using AspNetZero. What are the benefits over swithching to AbpCommercial? How much to change in code from 10000 foot overview :D
Also, Is AbpCommercial built on metronic?
Hi,
I have a background job where I fetch a setting value for each tenant. Is there a way by which I can fetch the setting value for all tenants in 1 query instead of foreach?
Current code:
var tenantIds = await _lRepository.GetAll().IgnoreQueryFilters()
.Select(c => c.TenantId)
.ToListAsync();
foreach (var tenantId in tenantIds)
{
var myBoolFlag = await SettingManager.GetSettingValueForTenantAsync<bool>("Super Power", tenantId);
if (!myBoolFlag) continue;
// Other code
}
That worked fine. I also added data['feature'] check in route guard.
Hi,
Is there any way to authorize angular routes as we do for permissions?
For eg:
new AppMenuItem('OrganizationUnits', 'Pages.Administration.OrganizationUnits', 'flaticon-map', '/app/admin/organization-units'),
and
{ path: 'users', component: UsersComponent, data: { permission: 'Pages.Administration.Users' } },
Can I do this check based on edition feature?