Production release of version 4.0.0 has been released on 2020-12-03 Use the below command to update both ABP CLI and ABP Suite
dotnet tool update -g Volo.Abp.Cli && abp suite update
- Framework Release notes: https://docs.abp.io/en/commercial/latest/release-notes#4-0-0-2020-11-26
- Commercial Release notes: https://docs.abp.io/en/commercial/latest/release-notes
- Blog post https://blog.abp.io/abp/ABP.IO-Platform-v4.0-RC-Has-Been-Released-based-on-.NET-5.0
- Migration guides https://docs.abp.io/en/abp/latest/Migration-Guides/Index
Migration guide from 3x to 4x => https://docs.abp.io/en/abp/latest/Migration-Guides/Abp-4_0
108 Answer(s)
-
0
Cli 4.0 and suite 4.0 Generate a brand new project, build project, add an entity in suite. services are correctly generated on the backend, however UI is not generated on the frontend. reviweing suite log I can see the path to the schemas has .suite\schematics.suite\schematics in it (its duplicated!!) if you generate the path structure inside it as its looking for, it runs and generates the UI. surely this is just a bug with the duplicate path?
example
2020-12-03 10:42:03.931 -05:00 [INF] Running the Angular Schematics command: npx "projectpathhere/angular/.suite/schematics/node_modules/.bin/ng" g ".suite/schematics/collection.json:entity" app-pro CustomerPortal "projectpathhere/aspnet-core/.suite/entities/Customer.json" 2020-12-03 10:42:07.601 -05:00 [INF] Angular Schematics command failed. Collection "projectpathhere\angular**\.suite\schematics\.suite\schematics**\node_modules\@abp\ng.schematics\collection.json" cannot be resolved.
-
0
having the same issue as new user running through the Tutorial
Log: appears as path is incorrect.
rootname is defined correctly.
Log Text: 2020-12-03 10:51:17.996 -06:00 [INF] 1/9 - EntityGenerateCommand started... 2020-12-03 10:51:18.162 -06:00 [INF] 1/9 - EntityGenerateCommand completed. | Duration: 165 ms. 2020-12-03 10:51:18.162 -06:00 [INF] 2/9 - RepositoryCommand started... 2020-12-03 10:51:18.361 -06:00 [INF] 2/9 - RepositoryCommand completed. | Duration: 199 ms. 2020-12-03 10:51:18.361 -06:00 [INF] 3/9 - AppServiceCommand started... 2020-12-03 10:51:18.434 -06:00 [INF] 3/9 - AppServiceCommand completed. | Duration: 72 ms. 2020-12-03 10:51:18.434 -06:00 [INF] 4/9 - ProxyControllerCommand started... 2020-12-03 10:51:18.447 -06:00 [INF] 4/9 - ProxyControllerCommand completed. | Duration: 12 ms. 2020-12-03 10:51:18.447 -06:00 [INF] 5/9 - PermissionCommand started... 2020-12-03 10:51:18.472 -06:00 [INF] 5/9 - PermissionCommand completed. | Duration: 25 ms. 2020-12-03 10:51:18.472 -06:00 [INF] 6/9 - ApplicationObjectMappingCommand started... 2020-12-03 10:51:18.481 -06:00 [INF] 6/9 - ApplicationObjectMappingCommand completed. | Duration: 8 ms. 2020-12-03 10:51:18.481 -06:00 [INF] 7/9 - UnitTestCommandCommand started... 2020-12-03 10:51:18.509 -06:00 [INF] 7/9 - UnitTestCommandCommand completed. | Duration: 27 ms. 2020-12-03 10:51:18.509 -06:00 [INF] 8/9 - AngularUiGenerateWithSchematicsCommand started... 2020-12-03 10:51:18.511 -06:00 [INF] Running the Angular Schematics command: npx "C:/SourceCode/ABP.IO/Playground/angular/.suite/schematics/node_modules/.bin/ng" g ".suite/schematics/collection.json:entity" app-pro Playground "C:/SourceCode/ABP.IO/Playground/aspnet-core/.suite/entities/Author.json" 2020-12-03 10:51:22.393 -06:00 [INF] Angular Schematics command failed. Collection "C:\SourceCode\ABP.IO\Playground\angular\.suite\schematics\.suite\schematics\node_modules\@abp\ng.schematics\collection.json" cannot be resolved.
2020-12-03 10:51:22.399 -06:00 [INF] 8/9 - AngularUiGenerateWithSchematicsCommand completed. | Duration: 3889 ms. 2020-12-03 10:51:22.399 -06:00 [INF] 9/9 - DbMigrationCommand started... 2020-12-03 10:51:22.399 -06:00 [INF] Adding new migration... 2020-12-03 10:51:22.399 -06:00 [INF] cd /d "C:\SourceCode\ABP.IO\Playground\aspnet-core\src\Playground.EntityFrameworkCore.DbMigrations" && dotnet ef migrations add Added_Author --startup-project ../Playground.HttpApi.Host --context PlaygroundMigrationsDbContext 2020-12-03 10:51:38.803 -06:00 [INF] Build started... Build succeeded. Done. To undo this action, use 'ef migrations remove'
-
0
for the Angular code generation issue; the problem is related to this commit https://github.com/angular/angular-cli/commit/5ce621e371166af4994cae5cc9a456ee683cbaf0 we'll fix this but there's a workaround of this problem.
Open this file:
C:\YourProject\angular\.suite\schematics\commands\entity\index.js
Go to line 56 and replace it with the following:
const abpSchematics = './node_modules/@abp/ng.schematics/collection.json';
-
0
Firstly i created project like below
After i created module like below
after open module solution, its look like below (host projects unloaded because they not created physically in folder)
also if you open app solution, its not added module project to solution even i select add to the solution)
and its not added here
-
0
Upon upgrading to 4.0 from 3.3.1 I see the AccountService on the Angular side has been removed. We were using that for sendPasswordResetCode. The documentation still has AccountService referenced (https://docs.abp.io/en/commercial/latest/modules/account#services). What do we use now?
Also, in the <ProjectName>.HttpApi.Host.cs file it references this package: <PackageReference Include="Serilog.Extensions.Hosting" Version="3.2.0" /> if you look in nuget or the Serilog.Extensions.Hosting project web page version 3.2.0 does not exist. 3.1 is the latest stable version.
-
0
Using Suite to create project, then add in the Account module
Angular/c#/EF core
in the Host xxxHttpApihostModule you get the below missing/incorrect references.
this is the first module we have attempted to bring in so we can change the Login screens without having to find/replace them all.
Is there a better way to go about or more documentation around the modules and the UI files they include?
Or a more definitive list of component replacements? as the current documentation https://docs.abp.io/en/abp/latest/UI/Angular/Component-Replacement might not reference the latest items
Any extra guidance would be appreciated. Thanks
-
0
I'm Guessing this is wrong too? Should be MailerHttpApiHostMigrationsDbContext...
Shout.Mailer\host\Shout.Mailer.HttpApi.Host\EntityFrameworkCore\MyProjectHttpApiHostMigrationsDbContext.cs Shout.Mailer\host\Shout.Mailer.HttpApi.Host\EntityFrameworkCore\MyProjectHttpApiHostMigrationsDbContextFactory.cs
-
0
Angular login page has been removed in v3.1
See https://blog.abp.io/abp/ABP-Framework-v3.1-RC-Has-Been-Released
There's no v3.2.0 packag for Serilog.Extensions.Hosting. Please double check. You might be confusing it with
Serilog.AspNetCore
? <PackageReference Include="Serilog.AspNetCore" Version="3.2.0" />HttpApi.Host packages:
<ItemGroup> <PackageReference Include="Serilog.AspNetCore" Version="3.2.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.0" /> <PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="5.0.0" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.Google" Version="5.0.0" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.MicrosoftAccount" Version="5.0.0" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.Twitter" Version="5.0.0" /> </ItemGroup>
-
0
-
0
Another "Abp Suite" bug. Creating an application called Shout with a module called Shout.Crm
Created a new Application (Blazor, separated Identity Server, no mobile react) named: "Shout"
Using the newly added option I created a "new module" called "Shout.Crm" and checked the option to add this to the application automatically.
This has caused multiple errors in the root application as the using statements now incorrectly have ".Shout" endings.
ShoutEntityFrameWorkCoreModule.cs using Shout.Crm.EntityFrameworkCore**.Shout;**
Can't fix this one myself? ShoutMigratrionsDbContext.cs builder.ConfigureShout.Crm(); //cannot resolve Crm I think this should be be: builder.ConfigureCrm();
Maybe if I create the module as Crm intead of Shout.Crm it will work? Either way its just guesswork.
-
0
I created a new Angular+Mongo project and couldn't reproduce your issue
abp new Angular.MongoDb1208 -t app-pro -u angular --mobile none --database-provider mongodb -csf
-
0
@dmeagor Problem with
Shout.Crm
namespace is a bug. It will be fixed in next release v4.0.1 (next week)Open module .sln file and all the host projects fail to open as they are not created (did you intend to create them.)
They shouldn't exist. But it seems like somehow they are still in solution file. We'll check.
-
0
@yekalkan
Open module .sln file and all the host projects fail to open as they are not created (did you intend to create them.)
They shouldn't exist. But it seems like somehow they are still in solution file. We'll check.
If this is the case then doesn't the module project folders need to be added to the application solution. Otherwise how do you run and test the module? I think they should be added into a "modules" solution folder.
-
0
Bug 1: abp suite
For modules created inside an application which do not have the host folder, an error appears when opening the module solution
Cannot find the directory C:\Users\xxx\RiderProjects\yyy\Shout\aspnet-core\modules\Shout.Mailer\host
Bug 2:
Abp suite hardcoded to show that modules are installed when they are not (eg blazor identity server UI)
Bug 3: abp commercial module page does not list where blazor is compatable.
Much more testing of the create new module system is needed! Basicially i was trying to find a way to install the Identity Server UI since it appars to be missing for blazor (no warning.) Wondered if I could install the mvc IS UI into a module but got the above errors.
-
0
When I generate a Blazor Project (Using ABP4.0.0 stable) to Publish, compiler show me this error: System.Runtime.CompilerServices.SuppressIldasmAttribute.SuppressIldasmAttribute(): Error processing method 'System.Runtime.CompilerServices.SuppressIldasmAttribute.SuppressIldasmAttribute()' in assembly That's error doesn't appear when i compile to release or debug. Only show me that when i go to Publish Option. To avoid that i put Publish Trimmed option in false. <PublishTrimmed>false</PublishTrimmed> But when i deploy on testing server i got this console error. Failed to find a valid digest in the 'integrity' attribute for resource '<URL>' with computed SHA-256 integrity. When i run app on IDE Mode every thing it's Ok
-
0
@david.hurtado
adding the following line to your Blazor.csproj is a requirement because Blazor has problems when treeshaking reflection objects.
<PublishTrimmed>false</PublishTrimmed>
Failed to find a valid digest in the 'integrity' attribute for resource '<URL>' with computed SHA-256 integrity
This error might be related with your firewall. It says the hash of the DLL files on your browser doesn't match the official hashes. So some firewalls may block your *.dll because they think it's a malicious file. In this post, he's also facing the same issue https://github.com/dotnet/aspnetcore/issues/5477#issuecomment-619261730
adding the following line to your Blazor.csproj ... this disables integrity check.
<BlazorCacheBootResources>false</BlazorCacheBootResources>
but I guess this will also not correct it if your DLL is being blocked.
secondly you can ask your system admin to add a firewall rule to allow *.DLL
lastly you can rename your Blazor DLLs. See https://docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/webassembly?view=aspnetcore-5.0#change-the-filename-extension-of-dll-files
-
0
@alper Thanks for your recomendations. I follow and make steps incate for you. Except rename Blazor Dll's No I get a vareity of error but Blazor App don't star. On Opera I get this conosole log message: Uncaught SyntaxError: Unexpected token '<' On Edge i get something like: Failed to load resource: net::ERR_HTTP2_PROTOCOL_ERROR :51113/_framework/System.Numerics.dll:1 Failed to load resource: net::ERR_HTTP2_PROTOCOL_ERROR 2galacweb.galac.com/:1 Uncaught (in promise) TypeError: Failed to fetch :51113/_framework/System.Reflection.Emit.ILGeneration.dll:1 Failed to load resource: net::ERR_HTTP2_PROTOCOL_ERROR Do you have any suggest?
-
0
Hi @Alper,
I answer your questions below.
your project type: angular. tiered or seperated identity server?: seperated identity server is it AppService or normal Controller?: It's in the Controller inherrit from IAppService can you compare the Suite generated code with your existing? I do the migration by generating the new code with the same Namespace and the same project name, so that I can copy all and replase by check the diff in the subversion.
-
0
- ABP Framework version: v3.3.0
- UI type: Angular
- Tiered (MVC) or Identity Server Seperated (Angular): yes
Hi All I have seperate module with differrent link and i want to use single sign on to login. I used angular-oauth2-oidc and call function loadDiscoveryDocumentAndLogin to skip the Login Form but it return to error page like This
Please help me how to solve it
-
0
Hi, I got this issue when generate CRUD with Augular UI and seperated Identity Server options:
I had tried to manually run 'npm install' in that folder and generated again, it showed successfully but the Angular UI was not updated, I did try @Alper work around as well but no luck: https://support.abp.io/QA/Questions/626#answer-f02d209c-0bb8-e1bd-a4d6-39f940b19df6
Below is the log content:
2020-12-11 15:57:38.101 +08:00 [WRN] Cannot run npm install in C:\Users\Admin\source\repos\TestAbp\angular.suite\schematics.To continue, you can manually run 'npm install' command in this directory. Volo.Abp.UserFriendlyException: Cannot run npm install in C:\Users\Admin\source\repos\TestAbp\angular.suite\schematics.To continue, you can manually run 'npm install' command in this directory. at Volo.Abp.Suite.Areas.AbpSuite.CrudPageGenerator.Services.AngularSchematicsService.unfJM7yjv7(String ) at Volo.Abp.Suite.Areas.AbpSuite.CrudPageGenerator.Services.AngularSchematicsService.lnAJAtU9SV(String , Solution ) at Volo.Abp.Suite.Areas.AbpSuite.CrudPageGenerator.Services.AngularSchematicsService.SetupSchematicsAsync(Solution solution) at Volo.Abp.Suite.Areas.AbpSuite.CrudPageGenerator.Commands.AngularUiGenerateWithSchematicsCommand.ExecuteAsync(CrudPageCommandOptions options) at Volo.Abp.Suite.Areas.AbpSuite.CrudPageGenerator.CommandManager.ExecuteAllAsync(CrudPageCommandOptions options) at Volo.Abp.Suite.Areas.AbpSuite.CrudPageGenerator.Commands.CrudPageGenerator.GenerateAsync(EntityModel entity, Solution solution) at Volo.Abp.Suite.Controllers.CrudPageGeneratorController.SaveAndGenerateEntityAsync(Guid solutionId, EntityModel entity) at lambda_method1472(Closure , Object ) at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.
-
0
@christianharo can you provide us your template type ? angular / mvc / blazor (tier or seperated identity server)
guys there are several ABP templates, so you should tell us which type of project you have created. otherwise it's getting more time to understand your issue!
-
0
@david.hurtado can we discuss your issue in the following question.. other people who are not interested in Blazor also gets notification emails. write https://support.abp.io/QA/Questions/662/Blazor---'SystemRuntimeCompilerServicesSuppressIldasmAttributeSuppressIldasmAttribute'-in-assembly
-
0
@[email protected] you can create a new question. this doesn't seem to be a bug and discussing here will bother other people.
-
0
@edelivery this topic is just for bug reports. for other discussions and other questions you can create a new question. there are a lot of people in this topic who gets email notifications, so topics which needs long lasting conversations should be opened as a new question.
-
0
@nhontran I created a brand new Angular + Seperated Identity Server project with the following command:
abp new Acme.AngularSeperated1211 -t app-pro -u angular -m none --separate-identity-server -csf
Then created a book entity via Suite 4.0 As expected the Angular UI is not generated, then I made this workaround and back to Suite, check only
Create user interface
option and re-generated. I see that there's no problem. image.png
In this step, Suite runs
npm install
command to install NPM packages in your Schematics directory. What I saw from your logs, you have an invalid directory path!Cannot run npm install in
C:\Users\Admin\source\repos\TestAbp\angular.suite\schematics
.To continue, you can manually run 'npm install' command in this directory.Normally this must be
C:\Users\Admin\source\repos\TestAbp\angular\.suite\schematics
. did you change any paths in your config files?you can create a new question for the further discussion.
-
0
AzureAD compile issue.
I've created a new MVC solution using 4.0 and I'm trying to test the AzureAD integration.
https://community.abp.io/articles/how-to-use-the-azure-active-directory-authentication-for-mvc-razor-page-applications-4603b9cf
When I try to follow this article or look at the sample code presented for the MVC AzureAD integration I get this compile error.
authenticationbuilder does not contain a definition for addidentityserverauthentication
The current documentation https://docs.abp.io/en/abp/latest/Modules/IdentityServer#identityserver-module
Just says TODO. Any pointers here.
-
0
@armanozak Thanks for your fixing bug of advanced filters.
About PrimeNG, I read it from this blog: https://blog.abp.io/abp/ABP-v0-19-Release-With-New-Angular-UI
We've created the template, document and infrastructure based on the latest Angular tools and trends:
- Uses NgBootstrap and PrimeNG as the UI component libraries. You can use your favorite library, no problem, but pre-built modules work with these libraries.
- Uses NGXS as the state management library.
-
0
Hi @huy.quan,
This is an old blog post. PrimeNG components were removed before v2 release. Built-in modules use NgBootstrap (with NgxDatatable and a few NgZorro components) now.
-
0
@clearlaunch
if you're saying this project doesn't build https://github.com/abpframework/abp-samples/tree/master/Authentication-Customization I can build it even with
AddAzureAD()
enabled. It just warns about the obsolote method. And we'll update this obsolote method. Otherwise it seems to be building successfully. -
0
@christianharo clear your browser cookies to solve
Tenant not found
issue. The customers will never see this issue because you'll never delete the tenant. But in your development environment, you drop your database or delete the test tenants. So it's just a development time issue. -
0
[email protected] we haven't got any feedback about not showing API endpoints in Swagger. This might be related to misconfiguration of module dependencies. You can create a new question as this might be related with your project. Also you can send us your project.
-
1
Newly created projects are not working
CLI: 4.0.1 Suite: 4.0.1 Frontend: Angular Db: MongoDb
After successfull compiling, migrating and seeding data into aplication everything is started correctly. Under login page i confirm my credentials into app, then app is hanging out.
Under investigation i have found error "loading discovery document TypeError: value is null" in my browser. Error is causing by call loadDiscoveryDocument method when try to get configuration.
Do i missing something in my angular enviroment?
With regards.
-
0
Dear @Jurec I tried the same scenario,
This issue looks because you use version 4.0.1 try to downgrade to v 4.0.0 it will works fine.
I tried the same scanrio with EF , and tried it with identity seperated and with merge identity with the host, the same issue
You can try to downgrade your font end packages (replace 4.0.1 with 4.0.0 and then yarn) If did not work, try to downgrade abp to version 4.0.0
-
1
I am having issues getting the angular web client to work when creating a new solution with Suite 4.0.1.
Steps to reproduce.
- Create a new solution
- Ran DbMigrator project
- Run Host project (test swagger api)
- Build Angular project
- Start Angular project
This does not happen with projects created with Suite 3.3.1.
- Create a new solution
-
0
I'm also facing same issue with 4.0.1 as @scott7106.
PS: Today is my First Day with Abp.io Commercial After spending ages with Asp.Net Zero i must say i was very excited to start... But than i realized the angular client contains only around 26 .ts files and and all the code is in module packages and customizing what is available out of the box is not even possible Because my current license does not support downloading the source... BAM!! :@ than i tried to calm down for a moment and wanted to cherish myself be looking at the running project and BAM!! this error. than i thought i might have the nightly build or something in the suite UI, i noticed that menu and than i realized i am already having a stable release version...
-
0
Bug: I cannot adjust page size or Pagination feature. For example, I add input.MaxResultCount = 5 in ngOnInit():
Then, the list is okay, but page number is incorrec. It should be 3 on below image. I check the page size of page button is still 10.
Is this a bug? Or what was I missing something here?
Thanks team.
-
0
ABP Framework version: v4.0.1 UI type: Angular Tiered (MVC) or Identity Server Seperated (Angular): yes
I have config in enviroment.ts to read from appsetting.json
export const environment = { production: false, hmr: false, remoteEnv: { url: '/assets/appsettings.json', method: 'GET', headers: {} } } as Config.Environment;
-
0
Hi @edelivery
You have to specify the
oAuthConfig
in the environment. See the default environment file and addoAuthConfig
property to the your environment by modifying it with your own configuration:import { Environment } from '@abp/ng.core'; const baseUrl = 'http://localhost:4200'; export const environment = { production: false, application: { baseUrl, name: 'MyProjectName', }, oAuthConfig: { issuer: 'https://localhost:44305', redirectUri: baseUrl, clientId: 'MyProjectName_App', responseType: 'code', scope: 'offline_access MyProjectName', }, apis: { default: { url: 'https://localhost:44305', rootNamespace: 'MyCompanyName.MyProjectName', }, }, } as Environment;
-
0
Dears, Yesterday I updated npm packages to (4.0.2), and got this error: (the project is did not change, it is as was generated from suite)!
ERROR NullInjectorError: R3InjectorError(AppModule)[LocalizationService -> AbpApplicationConfigurationService -> RestService -> InjectionToken CORE_OPTIONS -> InjectionToken CORE_OPTIONS -> InjectionToken CORE_OPTIONS]: NullInjectorError: No provider for InjectionToken CORE_OPTIONS! at NullInjector.get (http://localhost:4200/vendor.js:61902:27) at R3Injector.get (http://localhost:4200/vendor.js:62069:33) at R3Injector.get (http://localhost:4200/vendor.js:62069:33) at R3Injector.get (http://localhost:4200/vendor.js:62069:33) at injectInjectorOnly (http://localhost:4200/vendor.js:55999:33) at ɵɵinject (http://localhost:4200/vendor.js:56003:61) at Object.RestService_Factory [as factory] (http://localhost:4200/vendor.js:129224:223) at R3Injector.hydrate (http://localhost:4200/vendor.js:62237:35) at R3Injector.get (http://localhost:4200/vendor.js:62058:33) at injectInjectorOnly (http://localhost:4200/vendor.js:55999:33)
<br> <br>
-
0
Hello,
Don't know if this is specific to 4.0.0 or before but abp suite is not compatible with using comment in enum that will be used in a property type.
We have error when we browse the file that say that there is duplication in the file and abp suite don't know how to parse it.
And with Angular UI if enums have no integer values the generate typescript enum are not correct.
export enum eTest { None = , Standard = , Anonymous = , }
Thanks
-
0
Having an issue with using
[UnitOfWork(IsDisabled = true)]
after upgrading to v4.0.2. In an application service method with the unit of work disabled, querying a repository like_repository.Where(x => x.Id == id)
throws a 500 error with the following message:2020-12-22 17:01:26.918 -05:00 [ERR] Cannot access a disposed context instance. A common cause of this error is disposing a context instance that was resolved from dependency injection and then later trying to use the same context instance elsewhere in your application. This may occur if you are calling 'Dispose' on the context instance, or wrapping it in a using statement. If you are using dependency injection, you should let the dependency injection container take care of disposing context instances. Object name: 'WebPlatformDbContext'. System.ObjectDisposedException: Cannot access a disposed context instance. A common cause of this error is disposing a context instance that was resolved from dependency injection and then later trying to use the same context instance elsewhere in your application. This may occur if you are calling 'Dispose' on the context instance, or wrapping it in a using statement. If you are using dependency injection, you should let the dependency injection container take care of disposing context instances. Object name: 'WebPlatformDbContext'. at Microsoft.EntityFrameworkCore.DbContext.CheckDisposed() at Microsoft.EntityFrameworkCore.DbContext.get_InternalServiceProvider() at Microsoft.EntityFrameworkCore.DbContext.get_ChangeTracker() at Microsoft.EntityFrameworkCore.Query.CompiledQueryCacheKeyGenerator.GenerateCacheKeyCore(Expression query, Boolean async) at Microsoft.EntityFrameworkCore.Query.RelationalCompiledQueryCacheKeyGenerator.GenerateCacheKeyCore(Expression query, Boolean async) at Microsoft.EntityFrameworkCore.SqlServer.Query.Internal.SqlServerCompiledQueryCacheKeyGenerator.GenerateCacheKey(Expression query, Boolean async) at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.Execute[TResult](Expression query) at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.Execute[TResult](Expression expression) at System.Linq.Queryable.FirstOrDefault[TSource](IQueryable`1 source) at Company.WebPlatform.WorkItems.WorkItemAppService.ExampleGetAsync(Guid id) in C:\Users\Jack\source\repos\WebPlatform\aspnet-core\src\Company.WebPlatform.Application\WorkItems\WorkItemAppService.cs:line 112 ... ... ... at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() --- End of stack trace from previous location ---
To reproduce, query a repository in a method with unit of work disabled like so:
Controller:
[UnitOfWork(IsDisabled = true)] [HttpGet] [Route("test/{id}")] public virtual Task<WorkItemDto> ExampleGetAsync(Guid id) { return _workItemAppService.ExampleGetAsync(id); }
AppService:
[UnitOfWork(IsDisabled = true)] [AllowAnonymous] public virtual async Task<WorkItemDto> ExampleGetAsync(Guid id) { var test = _workItemRepository.Where(w => w.Id == id).FirstOrDefault(); //<<-- Error thrown here return ObjectMapper.Map<WorkItem, WorkItemDto>(test); }
Execute the route from swagger and notice the error when the uow is disabled. It's worth noting the built in methods like
_repository.GetAsync()
still work.Thanks for the help!
-
0
@bqabani we'll check that. there's 4.1.0-rc.2 , meantime you can test it in the latest RC.
@[email protected], assign values to your enum. this is best practise and Suite supports this.
enum eTest { None = 1, Standard = 2, Anonymous = 3, }
@jackmcelhinney can you try this; I guess there's async-await issue.
[UnitOfWork(IsDisabled = true)] [HttpGet] [Route("test/{id}")] public virtual Task<WorkItemDto> ExampleGetAsync(Guid id) { return await _workItemAppService.ExampleGetAsync(id); }
[UnitOfWork(IsDisabled = true)] [AllowAnonymous] public virtual async Task<WorkItemDto> ExampleGetAsync(Guid id) { var test = await _workItemRepository.Where(w => w.Id == id).FirstOrDefaultAsync(); //<<-- Error thrown here return ObjectMapper.Map<WorkItem, WorkItemDto>(test); }
-
0
Hi @bqabani,
This sometimes happens when you have multiple versions of same package installed (due to updating an existing project).
Could you please try the following steps:
- Remove node_modules folder
- Remove yarn.lock (or package-lock.json)
- Check if all volo and abp packages are v4.0.2 in package.json
- Re-install all packages
Thanks.
-
0
Thanks @alper, we will do that. And for the parsing error when there is comment on enum value ?
-
0
Thanks @alper, we will do that. And for the parsing error when there is comment on enum value ?
that's not supported. but you can temporarily remove comments before the code generation. then add it again after it completes.
-
0
Hi @alper. I mentioned on my original comment that using the built in repository methods like
GetAsync(id)
are working properly for me as well. The error is only thrown when querying the repository with a LINQ operator likeWhere()
. While my example code for reproducing the issue could be replaced withGetAsync(id)
, our actual code where we are disabling the UOW has much more complicated queries that cannot be replaced with the repository method. These queries were working before upgrading to4.0.2
and no other changes have been made.To reproduce the issue, please try replacing the line in
WorkItemAppService.cs
with this:return ObjectMapper.Map<WorkItem, WorkItemDto>(await _workItemRepository.Where(w => w.Id == id).FirstOrDefaultAsync());
Thank you for your help trying to sort this out.
-
0
Hello,
"Program" is not a C # reserved keyword and yet when you want to use an entity with this name as an association on another entity the Program.cs file is not listed. However, the creation of the "Program" entity went very well.
Erratum: It's only related on the filename "Program.cs" If I rename it to "ProgramTest.cs" all is working well.
Nicolas.
-
0
Hello,
"Program" is not a C # reserved keyword and yet when you want to use an entity with this name as an association on another entity the Program.cs file is not listed. However, the creation of the "Program" entity went very well.
Erratum: It's only related on the filename "Program.cs" If I rename it to "ProgramTest.cs" all is working well.
Nicolas.
@willignicolas yes it's not a C# reserved keyword but Suite automatic class finder filters it because it's interferring with program.cs in host projects. Also it may break namespaces as there's an existing Program class. I created an internal ticket for that to be able to use Program keyword. I myself had the same situation while creating Program in a School portal. It's being problem with dotnet Program classes (not related to ABP) so I used SchoolProgram. But if you insist on this name, there's a work around. Choose any other class (eg: AppUser) then save it without generating. After, go to
aspnet-core\.suite\entities
folder and find your entity.json. You'll see the file paths and other properties for the navigation property. Update them and go back to Suite. Refresh it and click save and generate. -
0
Hi.
I have same problem when start DBMigrator. I can login to commercial portal, but cannot ABP login using CLI (ABP LOGIN)
-
1
Hi Alper, @alper
Template
Frontend.Mvc.Page.Partials.editcshtml_cs_LookupDropdownOnGet.txt
is wrong.
%%np-entity-name%%LookupList.AddRange(( await _%%entity-name-camelcase%%AppService.Get%%np-entity-name%%LookupAsync(new LookupRequestDto { xxxxxx MaxResultCount = LimitedResultRequestDto.MaxMaxResultCount })).Items.Select(t => new SelectListItem(t.DisplayName, t.Id.ToString())).ToList() );
This is just to simple. You cannot release this as stable to paying customers.
I have seen other critical responses here. I also feel like I'm a tester. In last version, lookup dropdown did not work at all. I have been patiant. But you cannot ask this from paying customers.
I dare you to present me an example of an Angular/EF project created with generate-proxy / suite. I never got it towork in the last months.
This should realy get better Alper. My advise: maintain stable versions, like Telerik does. Now you solve one and create the next issue.
Erik
-
0
@developer1 thanks for your feedback. yoru reported issue has been already fixed in 4.1.1.
there are 3 database providers (EF Core, MongoDB, Dapper) * 3 Front-Ends (Angular, MVC, Blazor) * Tier/Seperated IDS4 structures. Maybe you are working on one project type, but there these different projects ( cartesian of these options ) it's hard to test all the variants.
On the other hand, the team is setting up a UI testing devops line now with Playwright We are very close to finish this testing environment. We'll be testing different variants of ABP after each preview. So I hope these issues will be less or zero. Thank you for your understanding.
-
0
Hello! Two small bugs to report (Angular UI ABP v4.0.2).
- The
My security logs
page is missing aReturn to Application
link like theManage your profile
page has. So there is no way to return without using the browser back button. - When editing permissions for a role or user, "Identity Management" is misspelled as "Idetity"
- The
-
0
Multiple errors in the 4.1 suite still.
Updating nuget packages - Suite
- Upgrading nuget packages from 4.0.2 to 4.1.0 returns a message saying it successfully updated to 4.0.2, which is the old version and nothing gets changed. If I run the abp update from the powershell it works just fine.
New module creation - Suite
- new modules are added but then because they do not have a "host" section the suite fails to work with them any longer.
- No way to use crud with new modules
- source is not added for new modules to parent solution, only the project references so there is no way to run them without manually adding the project source into the solution (since the modules do not have the hosts project.
angular proxy multiple issues reported by my developers.
- This is just in an early alpha state and needs work.
Looking at your roadmap I think you could do with a period of feature freeze to get things working properly before attempting new features. As far as developing a billing and invoicing system is concerned, you would be absolutely insaine to try and develop something so complex which has to be entirelly bug free since it's dealing with peoples taxes. You can't do a "basic version" as it either compliant or not. That means EU/UK VAT proof of supply regulations, VEIS verification, US sale tax calculations or Taxjar plugins, API sync to accounting software.
Please, slow down!
-
0
@dmeagor
Updating nuget packages - Suite
1-Created a new project with version 4.0.2
2-Clicked "Update all ABP packages"
3-I see the versions are updated to 4.1.0
check that you have both CLI and Suite updated to 4.1.0. otherwise I don't see a reason not updating to 4.1.0 :/
New module creation - Suite I reproduced this issue. created an issue. will be fixed in 4.1.1. for a workaround use the CLI. it'll create the host folder. then you can add this module to your solution (or just move the host folder)
abp new Acme.MyProModule -t module-pro
angular proxy multiple issues reported by my developers. can you provide a concrete issue so that I can report to the team?
Please, slow down! thanks for your suggestion ;)
-
0
The command get the same problem:
》
dotnet tool update -g Volo.Abp.Suite --add-source https://nuget.abp.io/<MY-private-key>/v3/index.json -
0
@alper
Regarding the suite updating issue above. I'm not entirelly sure what caused it but I can tell you that they were modules not applications. There were two modules, the first updated fine, the second just kept reporting success even though it hadn't done anything. Cli worked ok.
Regarding the Anglar proxy issue, our dev said "It doesn't change the 'apiName' in the generated services. Even though it uses this parameter to generate them". He said it was a minor issue though.
-
0
Hi @dmeagor,
The
apiName
property in generated services are collected from theremoteServiceName
property of each module in the/api/abp/api-definition
response. The response looks like this:{ "modules": { "identityServer": { "rootPath": "identityServer", "remoteServiceName": "AbpIdentityServer", "controllers": { /* controller definitions here */ }, }, "types": { /* type definitions here */ } }
The
--api-name
parameter, on the other hand, points to the setting in theenvironment.ts
file we should use to fetch/api/abp/api-definition
response from. This parameter is useful when building a module and is usually omitted or passed asdefault
when developing apps.One helpful tip: You can make the CLI ask you questions by running
abp generate-proxy --prompt
. It then explains what each parameter is good for. -
0
@alper any update on this?
@lwilbourn @rcalv002 I reproduced the issue. There's a problem generating the Angular code. Created an internal issue. Will be fixed in v4.0.1
I have just updated abp cli and suite to 4.1.1, created a new solution but the CRUD Page Generator isn't generating Angular UI.
I can see an issue in the Angular Schematics log file.
0 verbose cli [ 0 verbose cli 'C:\Program Files\nodejs\node.exe', 0 verbose cli 'C:\Users\UserName\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js', 0 verbose cli 'exec', 0 verbose cli '--', 0 verbose cli 'C:/Users/UserName/Source/Repos/TestAngular/angular/.suite/schematics/node_modules/.bin/ng', 0 verbose cli 'g', 0 verbose cli '.suite/schematics/collection.json:entity', 0 verbose cli 'app-pro', 0 verbose cli 'TestAngular', 0 verbose cli 'C:/Users/UserName/Source/Repos/TestAngular/aspnet-core/.suite/entities/PeriodType.json' 0 verbose cli ] 1 info using [email protected] 2 info using [email protected] 3 timing config:load:defaults Completed in 1ms 4 timing config:load:file:C:\Users\UserName\AppData\Roaming\npm\node_modules\npm\npmrc Completed in 2ms 5 timing config:load:builtin Completed in 2ms 6 timing config:load:cli Completed in 3ms 7 timing config:load:env Completed in 0ms 8 timing config:load:file:C:\Users\UserName\Source\Repos\TestAngular\angular.npmrc Completed in 0ms 9 timing config:load:project Completed in 1ms 10 timing config:load:file:C:\Users\UserName.npmrc Completed in 1ms 11 timing config:load:user Completed in 1ms 12 timing config:load:file:C:\Users\UserName\AppData\Roaming\npm\etc\npmrc Completed in 0ms 13 timing config:load:global Completed in 0ms 14 timing config:load:cafile Completed in 0ms 15 timing config:load:validate Completed in 0ms 16 timing config:load:setUserAgent Completed in 0ms 17 timing config:load:setEnvs Completed in 1ms 18 timing config:load Completed in 10ms 19 verbose npm-session 46848984ec072eb7 20 timing npm:load Completed in 19ms 21 timing command:exec Completed in 6ms 22 verbose stack Error: ENOENT: no such file or directory, open 'C:\Users\UserName\Source\Repos\TestAngular\angular.suite\schematics\node_modules.bin\ng\package.json' 23 verbose cwd C:\Users\UserName\Source\Repos\TestAngular\angular 24 verbose Windows_NT 10.0.18363 25 verbose argv "C:\Program Files\nodejs\node.exe" "C:\Users\UserName\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js" "exec" "--" "C:/Users/UserName/Source/Repos/TestAngular/angular/.suite/schematics/node_modules/.bin/ng" "g" ".suite/schematics/collection.json:entity" "app-pro" "TestAngular" "C:/Users/UserName/Source/Repos/TestAngular/aspnet-core/.suite/entities/PeriodType.json" 26 verbose node v12.14.1 27 verbose npm v7.4.0 28 error code ENOENT 29 error syscall open 30 error path C:/Users/UserName/Source/Repos/TestAngular/angular/.suite/schematics/node_modules/.bin/ng/package.json 31 error errno -4058 32 error enoent ENOENT: no such file or directory, open 'C:\Users\UserName\Source\Repos\TestAngular\angular.suite\schematics\node_modules.bin\ng\package.json' 33 error enoent This is related to npm not being able to find a file. 34 verbose exit -4058
-
0
- ABP Framework version: v4.1.1
- UI type: Angular
- DB provider: EF Core
- Tiered (MVC) or Identity Server Seperated (Angular): no
- Steps to reproduce the issue:
Hi, I found a bug in CRUD Generator for Angular or maybe proxy generator. When you created a solution with a dot in the name like this:
and create simple entity:
then generated angular proxy model looks like this:
and I have build errors.
When I don't use dots in the solution name then everything works fine and I have generated dto objects in angular project.
-
0
Yes, there is a bug, but it isn't because of the dot in the solution name. The proxy generator tries to resolve any types with the keyword "System" in it. It apparently cannot resolve the types properly when the solution name ends with the word "System" (and has a dot in the solution name). ~~We will fix it quickly.~~ ~~There is an open PR for this now.~~ Fixed.