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
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.
After updating to v7.4, the user menu does not appear after user login on the public site.
ABP Framework version: 7.3.2
UI Type: MVC
Database System: EF Core (SQL Server)
Tiered (for MVC) or Auth Server Separated (for Angular): no
Exception message and full stack trace:
Steps to reproduce the issue:
Hello, we made iyzico payment integration. But we cannot add an installment option. We examined the documents but it doesn't seem to work. How can we do it? Thank you