Well, after thinking, about it, TenantManager has email template, and UserEmailer needs it, so I created circle myself.
How would I break it?
All I did is moved SendTestEmail to UserEmailer so test email comes with body, etc.
And now I get this:
An error occurred while starting the application. CircularDependencyException: Dependency cycle has been detected when trying to resolve component 'MyApp.Authorization.Users.UserEmailer'. The resolution tree that resulted in the cycle is the following: Component 'MyApp.Authorization.Users.UserEmailer' resolved as dependency of component 'MyApp.MultiTenancy.TenantManager' resolved as dependency of component 'MyApp.Emailing.EmailTemplateProvider' resolved as dependency of component 'MyApp.Authorization.Users.UserEmailer' resolved as dependency of component 'Abp.MultiTenancy.AbpTenantManager`2[[MyApp.MultiTenancy.Tenant, MyApp.Core, Version=0.0.1.0, Culture=neutral, PublicKeyToken=null],[MyApp.Authorization.Users.User, MyApp.Core, Version=0.0.1.0, Culture=neutral, PublicKeyToken=null]]_1805ea27-3e70-4292-a3cf-3e176e5d35eb' resolved as dependency of component 'MyApp.MultiTenancy.TenantManager_1889fa30-a4b8-4dcc-b99a-e4ab64a3f96d' resolved as dependency of component 'MyApp.MultiTenancy.SubscriptionExpirationCheckWorker' which is the root component being resolved. Castle.MicroKernel.Handlers.DefaultHandler.ResolveCore(CreationContext context, bool requiresDecommission, bool instanceRequired, out Burden burden)
I did manual update with, is there other way?
public partial class MySettings : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<string>(
name: "Value",
table: "AbpSettings",
nullable: true,
maxLength: 4000,
oldClrType: typeof(string),
oldMaxLength: 2000,
oldNullable: true);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<string>(
name: "Value",
table: "AbpSettings",
nullable: true,
maxLength: 2000,
oldClrType: typeof(string),
oldMaxLength: 4000,
oldNullable: true);
}
}
Is there a way to change the MaxValueLength
[MaxLength(MaxValueLength)]
public virtual string Value { get; set; }
I need to extend to 4000 and abp default is 2000
Thanks.
thanks, the key was to use in onShown method;
@alper - thanks for an update
do you know the release date for the next release? thank you.
Subscription feature is not a subscription but one time payment. A lot of functions are missing:
Any plans to make a real subscription? Otherwise, you should call it one time payment.
any direction on this topic? or it died?
Thanks for sharing. Do you plan to add client code as well?
@ismcagdas - thanks, that is where I got the code. In modal dialogs it does not work as tab not initialized on load, on init, etc. test for yourself, the code below does not work in modal dialog. this.staticTabs.tabs is NULL
import { Component, ViewChild } from '@angular/core';
import { TabsetComponent } from 'ngx-bootstrap';
@Component({
selector: 'demo-tabs-manual',
templateUrl: './manual.html'
})
export class DemoTabsManualComponent {
@ViewChild('staticTabs') staticTabs: TabsetComponent;
selectTab(tab_id: number) {
this.staticTabs.tabs[tab_id].active = true;
}
disableEnable() {
this.staticTabs.tabs[2].disabled = !this.staticTabs.tabs[2].disabled;
}
}