Good question. I would also like some feedback in general of how to use ABP Commercial in an open source project, if it is all doable and if so how to do it without breaking any licenses etc. There might already be some article etc on this but haven't seen anything and thought about it from time to time.
One alternative way could perhaps be to add AutoMapper mappings so that you could convert between the generated DTOs if that is what you need, not sure how much extra work this would be though.
OK, thanks.
One reason why this might be a good thing is if you want to use some other component library like DevExpress, Telerik etc. but still use ABP Suite to generate some boilerplate for it. Those components usually have just one DTO for all CRUD operations which might not be best practice but then again, the real world rarely is :)
Of course, this is still doable but it would require changing more of the generated code which would not be necessary if there was an option to use a simpler DTO structure.
I would guess that many customers of the Commercial version would build enterprise applications, for which you would normally have higher requirements regarding "data components" than typica free component libraries like Blazorize can offer.
Not sure if there is a better way to submit suggestions for improvements, as GitHub Issues are only for the non commercial version? Don't want a suggestion to lower our number of support tickets.
ABPSuite by default creates DTOs with different DTOs for each AGUD/CRUD operation. While this might be the most fancy solution, in many cases, just having one simple DTO for all operations is sufficient and also much easier to maintain for simple projects.
Suggestion, consider implementing an option in ABP Suite to use one simple DTO for all AGUD/ CRUD operations instead of separate ones.
BTW, the link in this sticky isn't working
https://support.abp.io/QA/Questions/954/We-are-listening-to-you
Hi @improwise, I've just created an angular application and followed the steps that you've provided, but I didn't get any error and I could successfully create a migration even without specifying
-Context
parameter on Package Manager Console.And also I could successfully run the Angular side by following the documentation.
Did you upgrade your application to v5.1.4 and what is your ng version?
Not sure why but after having reinstalled Visual Studio, the migration problem seemed to go away. Still getting this though:
An error occurred while accessing the Microsoft.Extensions.Hosting services. Continuing without the application service provider. Error: Unable to build IHost
We never really bothered with angular for this sample, but it seems it is using Angular 11 in the samples so I guess it hasn't been updated in a while.
Seems like this tutorial has more problems with 5.1.4, even when using the code from here:
https://github.com/abpframework/abp-samples/tree/master/TodoApp.
like ng build didn't seem to work either
An unhandled exception occurred: ENOENT: no such file or directory, lstat '****\src\abp-samples-master\TodoApp\Angular-EfCore\angular\node_modules\bootstrap\dist\css\bootstrap.rtl.min.css'
Seems like it is based on Angular 11.1.4.
Note sure if this should be posted to GitHub Issues instead but it seems the "abp new TodoApp -u angular" command uses app-pro version which I recall is commercial one.
If you're creating a bug/problem report, please include followings:
This problem seem to be back in 5.1.4
https://support.abp.io/QA/Questions/1662/More-than-one-DBContext-was-found
When following the instructions for
https://docs.abp.io/en/abp/latest/Tutorials/Todo/Index?UI=NG&DB=EF
(angular version)
you get:
More than one DbContext was found. Specify which one to use. Use the '-Context' parameter for PowerShell commands and the '--context' parameter for dotnet commands.
If you specify
Add-Migration Added_TodoItem -Context TodoAppDbContext
Migration is created but you still get an error:
Microsoft.Extensions.Hosting.HostFactoryResolver+HostingListener+StopTheHostException: Exception of type 'Microsoft.Extensions.Hosting.HostFactoryResolver+HostingListener+StopTheHostException' was thrown. at Microsoft.Extensions.Hosting.HostFactoryResolver.HostingListener.OnNext(KeyValuePair
2 value)
` at System.Diagnostics.DiagnosticListener.Write(String name, Object value)
at Microsoft.Extensions.Hosting.HostBuilder.Build()
at Microsoft.AspNetCore.Builder.WebApplicationBuilder.Build()
at TodoApp.Program.Main(String[] args) in *******\src\TodoApp\aspnet-core\src\TodoApp.HttpApi.Host\Program.cs:line 39
To undo this action, use Remove-Migration.``
(We are using Package Manage Console in VS)
ABP Suite 5.1.2
After upgrading trying to access audit logs getting the following error.[ERR] Invalid column name 'ImpersonatorTenantName'.
Invalid column name 'ImpersonatorUserName'.
Microsoft.Data.SqlClient.SqlException (0x80131904): Invalid column name 'ImpersonatorTenantName'.
Invalid column name 'ImpersonatorUserName'.
at Microsoft.Data.SqlClient.SqlCommand.<>c.<ExecuteDbDataReaderAsync>b__188_0(Task`1 result)You have to use add-migration and then run dbmigrator
Can confirm I had the same problem and this solution worked fine.
After upgrading from ABP 5.0 to 5.1.2.
AbpException: Could not find the bundle file '/libs/@fortawesome/fontawesome-free/css/all.css' for the bundle 'Blazor.LeptonTheme.Global'!
Also tried updating Blazorise to latest version but to no avail.
Also, ABPs websites are painfully slow right now, including the supportsite.
Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers.AbpTagHelperResourceService.ProcessAsync(ViewContext viewContext, TagHelper tagHelper, TagHelperContext context, TagHelperOutput output, List<BundleTagHelperItem> bundleItems, string bundleName) Volo.Abp.AspNetCore.Mvc.UI.Bundling.TagHelpers.AbpBundleTagHelperService<TTagHelper, TService>.ProcessAsync(TagHelperContext context, TagHelperOutput output) Microsoft.AspNetCore.Razor.Runtime.TagHelpers.TagHelperRunner.<RunAsync>g__Awaited|0_0(Task task, TagHelperExecutionContext executionContext, int i, int count) MIBS.Blazor.Pages.Pages__Host.<ExecuteAsync>b__17_0() in _Host.cshtml + ...
Seems like this is a problem with ABP Suite, when updating ABP packages through it, it decided for an unknown reason to simply delete wwwroot/libs and some other folders. Using "abp update" instead seemed to work.