I've encountered an issue while using the abp generate-proxy command that I believe needs your attention. Currently, when running the command:
abp generate-proxy -t ng -m productService -u https://localhost:44361 --target ProductService
The CLI creates a product-service subdirectory within the target folder, resulting in a structure like this: projects/product-service/src/lib/proxy/product-service/
However, this additional product-service subdirectory is unnecessary and inconsistent with the structure created by ABP Suite. Ideally, the proxies should be generated directly under the proxy folder, like this:
projects/product-service/src/lib/proxy/
This discrepancy causes inconvenience when switching between ABP CLI and ABP Suite, as it requires manual restructuring of the generated files. Could you please consider modifying the generate-proxy command to avoid creating this extra subdirectory? This change would align the CLI's behavior with ABP Suite and provide a more consistent development experience. Thank you for your attention to this matter. Your continuous efforts in improving the ABP framework are greatly appreciated.
hi,
2024-01-18 15:14:48.532 +03:00 [ERR] Cannot use multiple context instances within a single query execution. Ensure the query uses a single context instance.
System.InvalidOperationException: Cannot use multiple context instances within a single query execution. Ensure the query uses a single context instance.
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.VisitExtension(Expression extensionExpression)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.Visit(Expression expression)
at System.Dynamic.Utils.ExpressionVisitorUtils.VisitArguments(ExpressionVisitor visitor, IArgumentProvider nodes)
at System.Linq.Expressions.ExpressionVisitor.VisitMethodCall(MethodCallExpression node)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.Visit(Expression expression)
at System.Dynamic.Utils.ExpressionVisitorUtils.VisitArguments(ExpressionVisitor visitor, IArgumentProvider nodes)
at System.Linq.Expressions.ExpressionVisitor.VisitMethodCall(MethodCallExpression node)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.Visit(Expression expression)
at System.Dynamic.Utils.ExpressionVisitorUtils.VisitArguments(ExpressionVisitor visitor, IArgumentProvider nodes)
at System.Linq.Expressions.ExpressionVisitor.VisitMethodCall(MethodCallExpression node)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.Visit(Expression expression)
at System.Dynamic.Utils.ExpressionVisitorUtils.VisitArguments(ExpressionVisitor visitor, IArgumentProvider nodes)
at System.Linq.Expressions.ExpressionVisitor.VisitMethodCall(MethodCallExpression node)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.Visit(Expression expression)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.ExtractParameters(Expression expression, Boolean clearEvaluatedValues)
at Microsoft.EntityFrameworkCore.Query.Internal.ParameterExtractingExpressionVisitor.ExtractParameters(Expression expression)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExtractParameters(Expression query, IParameterValues parameterValues, IDiagnosticsLogger`1 logger, Boolean parameterize, Boolean generateContextAccessors)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteAsync[TResult](Expression query, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.ExecuteAsync[TResult](Expression expression, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable`1.GetAsyncEnumerator(CancellationToken cancellationToken)
at System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.GetAsyncEnumerator()
at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable`1 source, CancellationToken cancellationToken)
at EnDeneme.UserProductSessions.UserProductSessionsAppService.GetListAsExcelFileAsync(UserProductSessionExcelDownloadDto input) in /Users/aksogut/Documents/projeler/EnDeneme/aspnet-core/src/EnDeneme.Application/UserProductSessions/UserProductSessionsAppService.cs:line 293
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.Authorization.AuthorizationInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.Auditing.AuditingInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.GlobalFeatures.GlobalFeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.Validation.ValidationInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at lambda_method5322(Closure, Object)
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Logged|12_1(ControllerActionInvoker invoker)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
This is my modul EFCore DbContext
[ConnectionStringName(SinavDbProperties.ConnectionStringName)]
public class SinavDbContext : AbpDbContext<SinavDbContext>, ISinavDbContext
{
public DbSet<ExamReport> ExamReports { get; set; } = null!;
public DbSet<ExamOrder> ExamOrders { get; set; } = null!;
public DbSet<ExamScore> ExamScores { get; set; } = null!;
public DbSet<ExamAnswers> ExamAnswerss { get; set; } = null!;
public DbSet<ExamResultLesson> ExamResultLessons { get; set; } = null!;
public DbSet<ExamResult> ExamResults { get; set; } = null!;
public DbSet<Exam> Exams { get; set; } = null!;
public DbSet<OptikForm> OptikForms { get; set; } = null!;
public DbSet<PracticeTestAnswersKey> PracticeTestAnswersKeys { get; set; } = null!;
public DbSet<Term> Terms { get; set; } = null!;
public DbSet<PracticeTest> PracticeTests { get; set; } = null!;
public DbSet<Topic> Topics { get; set; } = null!;
public DbSet<ExamTypeScoreType> ExamTypeScoreTypes { get; set; } = null!;
public DbSet<ScoreTypeTemplate> ScoreTypeTemplates { get; set; } = null!;
public DbSet<ScoreType> ScoreTypes { get; set; } = null!;
public DbSet<ExamTypeTemplateLesson> ExamTypeTemplateLessons { get; set; } = null!;
public DbSet<ExamTypeTemplate> ExamTypeTemplates { get; set; } = null!;
public DbSet<ExamType> ExamTypes { get; set; } = null!;
public DbSet<Lesson> Lessons { get; set; } = null!;
public DbSet<DersGrup> DersGrups { get; set; } = null!;
public DbSet<Yayinevi> Yayinevis { get; set; } = null!;
/* Add DbSet for each Aggregate Root here. Example:
* public DbSet<Question> Questions { get; set; }
*/
public SinavDbContext(DbContextOptions<SinavDbContext> options)
: base(options)
{
}
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
builder.ConfigureIdentityPro();
builder.ConfigureSinav();
}
This is main project DbCOntext:
[ReplaceDbContext(typeof(IIdentityProDbContext))]
[ConnectionStringName("Default")]
public class EnDenemeDbContext :
AbpDbContext<EnDenemeDbContext>,
IIdentityProDbContext, IHasEventOutbox, IHasEventInbox[ReplaceDbContext(typeof(IIdentityProDbContext))]
[ConnectionStringName("Default")]
public class EnDenemeDbContext :
AbpDbContext<EnDenemeDbContext>,
IIdentityProDbContext, IHasEventOutbox, IHasEventInbox
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
/* Include modules to your migration db context */
builder.ConfigurePermissionManagement();
builder.ConfigureSettingManagement();
builder.ConfigureBackgroundJobs();
builder.ConfigureAuditLogging();
builder.ConfigureIdentityPro();
builder.ConfigureOpenIddictPro();
builder.ConfigureFeatureManagement();
builder.ConfigureLanguageManagement()
........
builder.ConfigureSinav();: **This is module DbContext**
When I want to use IReporsitory<IdentityUser, Guid> this error throw
Last login: Thu Dec 28 12:43:26 on ttys001 ➜ ~ dotnet tool install --global PowerShell Tool 'powershell' is already installed. ➜ ~
14:04:42.846 Information - Volo.Abp.UI.Navigation.AbpUiNavigationModule 14:04:42.846 Information - Volo.Abp.UI.AbpUiModule 14:04:42.846 Information - Volo.Abp.GlobalFeatures.AbpGlobalFeaturesModule 14:04:42.846 Information - Volo.Abp.Application.AbpDddApplicationModule 14:04:42.846 Information - Volo.Abp.Features.AbpFeaturesModule 14:04:42.846 Information - Volo.Abp.BackgroundWorkers.Quartz.AbpBackgroundWorkersQuartzModule 14:04:42.846 Information - Volo.Abp.Quartz.AbpQuartzModule 14:04:42.846 Information - Volo.Abp.Studio.UI.Theming.AbpStudioUIThemingModule 14:04:42.875 Information Initialized Scheduler Signaller of type: Quartz.Core.SchedulerSignalerImpl 14:04:42.875 Information Quartz Scheduler created 14:04:42.875 Information JobFactory set to: Quartz.Simpl.MicrosoftDependencyInjectionJobFactory 14:04:42.876 Information RAMJobStore initialized. 14:04:42.876 Information Quartz Scheduler 3.7.0.0 - 'QuartzScheduler' with instanceId 'NON_CLUSTERED' initialized 14:04:42.877 Information Using thread pool 'Quartz.Simpl.DefaultThreadPool', size: 10 14:04:42.877 Information Using job store 'Quartz.Simpl.RAMJobStore', supports persistence: False, clustered: False 14:04:42.882 Information Adding 0 jobs, 0 triggers. 14:04:42.903 Information Scheduler QuartzScheduler_$_NON_CLUSTERED started. 14:04:43.164 Information Initialized all ABP modules. 14:04:43.170 Information User profile is available. Using '"/Users/aksogut/.aspnet/DataProtection-Keys"' as key repository; keys will not be encrypted at rest. 14:04:43.193 Information Now listening on: "http://localhost:38271" 14:04:43.193 Information Application started. Press Ctrl+C to shut down. 14:04:43.193 Information Hosting environment: "Production" 14:04:43.193 Information Content root path: "/" 14:04:47.312 Information Received HTTP response headers after 207.5767ms - 200 14:04:47.312 Information End processing HTTP request after 212.9181ms - 200 14:04:47.531 Information Start processing HTTP request "GET" "https://community.abp.io/api/app/post?maxResultCount=5&Languages=en&Languages=en" 14:04:47.531 Information Sending HTTP request "GET" "https://community.abp.io/api/app/post?maxResultCount=5&Languages=en&Languages=en" 14:04:47.649 Information Received HTTP response headers after 61.1053ms - 200 14:04:47.649 Information End processing HTTP request after 61.268ms - 200 14:04:47.728 Information Received HTTP response headers after 197.1467ms - 200 14:04:47.728 Information End processing HTTP request after 197.4085ms - 200 14:04:49.626 Information Starting task execution: "Checking license end time" 14:04:49.627 Information Completed task execution: "Checking license end time" 14:04:49.642 Information Starting task execution: "Loading extensions" 14:04:49.682 Warning Command failed: dotnet restore Output: /bin/bash: dotnet: command not found 14:04:49.682 Warning Code: 14:04:49.682 Warning Details: 14:04:49.684 Warning Extension 'Volo.Abp.Studio.Extensions.StandardSolutionTemplates.Core.dll' is not loaded! Path: /Applications/ABP Studio.app/Contents/MacOS/Volo.Abp.Studio.Extensions.StandardSolutionTemplates.Core.dll. 14:04:49.684 Warning Extension 'Volo.Abp.Studio.Extensions.StandardSolutionTemplates.UI.dll' is not loaded! Path: /Applications/ABP Studio.app/Contents/MacOS/Volo.Abp.Studio.Extensions.StandardSolutionTemplates.UI.dll. 14:04:49.685 Information Completed task execution: "Loading extensions" 14:04:49.685 Information Starting task execution: "Checking for new version of extensions" 14:04:49.687 Warning Extension 'Volo.Abp.Studio.Extensions.StandardSolutionTemplates.Core.dll' is not loaded! Path: /Applications/ABP Studio.app/Contents/MacOS/Volo.Abp.Studio.Extensions.StandardSolutionTemplates.Core.dll. 14:04:49.687 Warning Extension 'Volo.Abp.Studio.Extensions.StandardSolutionTemplates.UI.dll' is not loaded! Path: /Applications/ABP Studio.app/Contents/MacOS/Volo.Abp.Studio.Extensions.StandardSolutionTemplates.UI.dll. 14:04:49.687 Information Completed task execution: "Checking for new version of extensions" 14:04:49.687 Information Starting task execution: "Checking pre-requirements" 14:04:49.717 Information Received HTTP response headers after 162.6568ms - 200 14:04:49.717 Information End processing HTTP request after 163.1484ms - 200 14:04:49.890 Information Completed task execution: "Checking pre-requirements" 14:04:49.891 Information Starting task execution: "Checking for new version of ABP Studio" 14:04:49.911 Information Start processing HTTP request "GET" "https://commercial.abp.io/api/abp-studio/appcast?os=osx" 14:04:49.911 Information Sending HTTP request "GET" "https://commercial.abp.io/api/abp-studio/appcast?os=osx" 14:04:50.098 Information Received HTTP response headers after 186.8303ms - 200 14:04:50.098 Information End processing HTTP request after 187.0498ms - 200 14:04:50.281 Information Completed task execution: "Checking for new version of ABP Studio"
Check the docs before asking a question: https://docs.abp.io/en/commercial/latest/ Check the samples to see the basic tasks: https://docs.abp.io/en/commercial/latest/samples/index The exact solution to your question may have been answered before, and please first use the search on the homepage. Provide us with the following info:
Hello, AbpStudio m1 MAC (Sonoma 14.2.1 (23C71) zsh shell). It gives the following error.
New Solutions:
Abp Suite installed but;
I created a form consisting of 5 questions in the Fom module. 17 answers were entered. When I try to download the answers in csv format, it only downloads the first 10. It does not download the others. I did not make any customisation in the form module.
I created a new project with Abp Suite. When I log in to the public site, the user menu does not appear. Likewise, the site I upgrade has the same problem.
After updating to v7.4, the user menu does not appear after user login on the public site.