Hi,
You have already investigated the code base and understood most of the details :)
We've done some performance improvements with the version 4.3. This topic is in our TODO list for the version 4.4.
Have a nice day.
no need to wait. you can just upgrade to latest devart package in your own application.
Hi,
Unfortunately, removing a property is not possible and we've never thought such a requirement before.
AddOrUpdateProperty
is for extra properties, not for the properties of a class.
As you know, normally, no way to remove a class property on runtime. As I know, also there is no way to remove an attribute on runtime.
I suggest you to create a new method in your custom service and use it in the client side.
As an alternative, you can add [DisableValidation]
attribute to the CreateAsync method to disable validation. In this case, you can implement the validation yourself inside the method.
This problem occurs since you are registering a second data seed contributor but not removing or replacing the original one.
Actually, you don't have to replace it just set admin email/password. Open MyProjectNameDbMigrationService
in your solution, find the SeedDataAsync
method, find this line:
await _dataSeeder.SeedAsync(tenant?.Id);
Change it like:
await _dataSeeder.SeedAsync(
new DataSeedContext(tenant?.Id)
.WithProperty("AdminEmail", "...........")
.WithProperty("AdminPassword", "..............")
);
I believe we should add this to the startup template, so it will be easy to understand it.
BTW, if you want to override a service, you should replace it as documented: https://docs.abp.io/en/abp/latest/Dependency-Injection#replace-a-service
Thanks for reporting. This issue will be resolved in next release (4.3).
Hi,
Feature system can be used to completely enable/disable a module or enable/disable some features of a module. However, the module should implement the logic for disable/enable itself, because it depends what module does.
For pre-built modules, we have designed the chat and file management module that supports fully disable it per tenant. For example, see the feature management modal for the file management module:
You can disable per edition or tenant. Even if you enable, you can control the storage limit for tenant/edition.
Identity and account module also has some features those can be enabled/disabled per tenant/edition.
However, other pre-built ABP Commercial modules are typically fundamental and business independent modules. So, we didn't design them to be enabled/disabled per tenant.
For your own modules, you can design them so that they are enabled/disabled per tenant. ABP framework provides the feature infrastructure for it.
Thanks a lot @michael.sudnik for your great explanations. This would be a good feature for the framework. I created an issue: https://github.com/abpframework/abp/issues/7423 We will work on this in the next weeks.
I am closing this ticket. You can re-open and add comment if you want.
This is not implemented for the Blazor UI yet. Still work in progress.
Hi @lalitChougule,
ABP uses standard EF Core transaction approach and it should also cover raw SQL operations.
I suspect that your UOW is not transactional. Can you put a breakpoint, debug and check if current UOW is transactional (Inject IUnitOfWorkManager and check it's Current property).
If your request is not GET, ABP automatically starts transaction. If you are sure that your UOW is transactional, then we will try to reproduce it in our side.
Hi,
We are happy to see you like the ABP Framework and recommend to your friends :)
For the year 2021, we have 2 new projects:
Availability dates are not clear yet.
Thanks.