Open Closed

Manually created lookup property not working #8079


User avatar
0
Navneet@aol.com.au created
  • ABP Framework version: v8.2.3
  • UI Type: MVC
  • Database System: EF Core (MySQL)
  • Tiered (for MVC) or Auth Server Separated (for Angular): yes
  • Exception message and full stack trace:
  • Steps to reproduce the issue:

Hello Team,

I have created a lookup property manually however, I am getting an error in accessing, below of my project details:

Domain Class:
  public abstract class LicenseTypeBase : FullAuditedAggregateRoot<Guid>
    {
        [NotNull]
        public virtual string LicenseName { get; set; }

        public virtual bool IsTrial { get; set; }

        public virtual int? TrialPeriod { get; set; }

        public virtual int ProductLicenseLimit { get; set; }

        public virtual int ProductLicenseValidationInDays { get; set; }

        public virtual int ProductViolationLimit { get; set; }

        public virtual int UserLicenseLimit { get; set; }

        public virtual int UserLicenseValidationInDays { get; set; }

        public virtual int UserViolationLimit { get; set; }

        public virtual double? LicensePrice { get; set; }

        public virtual bool IsActive { get; set; }

        [CanBeNull]
        public virtual string? Comments { get; set; }
        public Guid ProductId { get; set; }
        public Guid? LicensePeriodId { get; set; }

        protected LicenseTypeBase()
        {

        }

        public LicenseTypeBase(Guid id, Guid productId, Guid? licensePeriodId, string licenseName, bool isTrial, int productLicenseLimit, int productLicenseValidationInDays, int productViolationLimit, int userLicenseLimit, int userLicenseValidationInDays, int userViolationLimit, bool isActive, int? trialPeriod = null, double? licensePrice = null, string? comments = null)
        {

            Id = id;
            Check.NotNull(licenseName, nameof(licenseName));
            Check.Length(licenseName, nameof(licenseName), LicenseTypeConsts.LicenseNameMaxLength, 0);
            LicenseName = licenseName;
            IsTrial = isTrial;
            ProductLicenseLimit = productLicenseLimit;
            ProductLicenseValidationInDays = productLicenseValidationInDays;
            ProductViolationLimit = productViolationLimit;
            UserLicenseLimit = userLicenseLimit;
            UserLicenseValidationInDays = userLicenseValidationInDays;
            UserViolationLimit = userViolationLimit;
            IsActive = isActive;
            TrialPeriod = trialPeriod;
            LicensePrice = licensePrice;
            Comments = comments;
            ProductId = productId;
            LicensePeriodId = licensePeriodId;
        }

    }
 
 public abstract class LicenseTypeLookupDto : EntityDto<Guid>
    {
        [NotNull]
        public string LicenseName { get; set; }

    }

Auto Mapper:
CreateMap<LicenseType, LicenseTypeLookupDto>();

Interface:

 public partial interface ILicenseSubscriptionsAppService
    {
        //Write your custom code here...

         Task<ListResultDto<LicenseTypeLookupDto>> GetLicenseTypeLookupAsync();
    }

 public class LicenseSubscriptionsAppService : LicenseSubscriptionsAppServiceBase, ILicenseSubscriptionsAppService
    {
        //Write your custom code...
        private readonly IRepository<LicenseType, Guid> _licenseTypeRepository;
        public LicenseSubscriptionsAppService(ILicenseSubscriptionRepository licenseSubscriptionRepository, LicenseSubscriptionManager licenseSubscriptionManager, IRepository<LicenseType, Guid> licenseTypeRepository)
            : base(licenseSubscriptionRepository, licenseSubscriptionManager)
        {
            _licenseTypeRepository = licenseTypeRepository;
        }
        public async Task<ListResultDto<LicenseTypeLookupDto>> GetLicenseTypeLookupAsync()
        {
            var licensetype = await _licenseTypeRepository.GetListAsync();

             return new ListResultDto<LicenseTypeLookupDto>(
                return ObjectMapper.Map<List<LicenseType>, List<LicenseTypeLookupDto>>(licensetype)
             );
        }
    }

Can you please suggest what am I doing wrong

many thx, Navneet


3 Answer(s)
  • User Avatar
    0
    Navneet@aol.com.au created

    Below is my Error Details:

    [14:43:59 DBG] Executing HealthCheck collector HostedService.
    [14:43:59 INF] Start processing HTTP request GET https://localhost:44334/health-status
    [14:43:59 INF] Sending HTTP request GET https://localhost:44334/health-status
    [14:43:59 INF] Request starting HTTP/1.1 GET https://localhost:44334/health-status - null null
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessRequestContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ResolveRequestUri.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandlers+ResolveRequestUri.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.OpenIddictServerHandlers+InferEndpointType.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by Volo.Abp.Account.Web.Pages.Account.OpenIddictImpersonateInferEndpointType.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandlers+ValidateHostHeader.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ValidateHostHeader.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was successfully processed by OpenIddict.Validation.OpenIddictValidationHandlers+EvaluateValidatedTokens.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ExtractAccessTokenFromAuthorizationHeader.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ExtractAccessTokenFromBodyForm.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ExtractAccessTokenFromQueryString.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was successfully processed by OpenIddict.Validation.OpenIddictValidationHandlers+ValidateRequiredTokens.
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was marked as rejected by OpenIddict.Validation.OpenIddictValidationHandlers+ValidateRequiredTokens.
    [14:43:59 DBG] AuthenticationScheme: OpenIddict.Validation.AspNetCore was not authenticated.
    [14:43:59 INF] Executing endpoint 'Health checks'
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 INF] Executed endpoint 'Health checks'
    [14:43:59 INF] Received HTTP response headers after 495.9926ms - 200
    [14:43:59 INF] End processing HTTP request after 496.1858ms - 200
    [14:43:59 INF] Request finished HTTP/1.1 GET https://localhost:44334/health-status - 200 null application/json 493.3882ms
    [14:43:59 DBG] HealthReportCollector - health report execution history saved.
    [14:43:59 DBG] HealthReport history already exists and is in the same state, updating the values.
    [14:43:59 DBG] HealthReportCollector has completed.
    [14:43:59 DBG] HealthCheck collector HostedService executed successfully.
    [14:43:59 INF] Request starting HTTP/2 GET https://localhost:44334/abp/Swashbuckle/SetCsrfCookie - null null
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 DBG] Added 0 entity changes to the current audit log
    [14:43:59 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessRequestContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ResolveRequestUri.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandlers+ResolveRequestUri.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.OpenIddictServerHandlers+InferEndpointType.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by Volo.Abp.Account.Web.Pages.Account.OpenIddictImpersonateInferEndpointType.
    [14:43:59 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandlers+ValidateHostHeader.
    [14:43:59 DBG] Get dynamic claims cache for user: 3a14defd-ddaf-0b84-fd19-326c5165c553
    [14:43:59 DBG] SessionId(fafe2cb1-86ab-44cf-b334-a73b08878be7) found in cache, Updating hit count(1), last access time(10/12/2024 2:42:28 PM) and IP address(::1).
    [14:43:59 INF] Executing endpoint 'Volo.Abp.Swashbuckle.AbpSwashbuckleController.SetCsrfCookie (Volo.Abp.Swashbuckle)'
    [14:43:59 INF] Route matched with {area = "Abp", action = "SetCsrfCookie", controller = "AbpSwashbuckle", page = ""}. Executing controller action with signature Void SetCsrfCookie() on controller Volo.Abp.Swashbuckle.AbpSwashbuckleController (Volo.Abp.Swashbuckle).
    [14:43:59 INF] Executed action Volo.Abp.Swashbuckle.AbpSwashbuckleController.SetCsrfCookie (Volo.Abp.Swashbuckle) in 1.7135ms
    [14:43:59 INF] Executed endpoint 'Volo.Abp.Swashbuckle.AbpSwashbuckleController.SetCsrfCookie (Volo.Abp.Swashbuckle)'
    [14:43:59 INF] Request finished HTTP/2 GET https://localhost:44334/abp/Swashbuckle/SetCsrfCookie - 204 null null 252.0513ms
    [14:44:00 INF] Request starting HTTP/2 GET https://localhost:44334/api/base-license/license-subscriptions/GetLicenseTypeLookup - null null
    [14:44:00 DBG] Added 0 entity changes to the current audit log
    [14:44:00 DBG] Added 0 entity changes to the current audit log
    [14:44:00 DBG] Added 0 entity changes to the current audit log
    [14:44:00 DBG] The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessRequestContext was successfully processed by OpenIddict.Validation.AspNetCore.OpenIddictValidationAspNetCoreHandlers+ResolveRequestUri.
    [14:44:00 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandlers+ResolveRequestUri.
    [14:44:00 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.OpenIddictServerHandlers+InferEndpointType.
    [14:44:00 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by Volo.Abp.Account.Web.Pages.Account.OpenIddictImpersonateInferEndpointType.
    [14:44:00 DBG] The event OpenIddict.Server.OpenIddictServerEvents+ProcessRequestContext was successfully processed by OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandlers+ValidateHostHeader.
    [14:44:00 DBG] Get dynamic claims cache for user: 3a14defd-ddaf-0b84-fd19-326c5165c553
    [14:44:00 DBG] SessionId(fafe2cb1-86ab-44cf-b334-a73b08878be7) found in cache, Updating hit count(2), last access time(10/12/2024 2:43:59 PM) and IP address(::1).
    [14:44:00 INF] Executing endpoint 'TechDB.BaseLicense.LicenseSubscriptions.LicenseSubscriptionController.GetLicenseTypeLookupAsync (TechDB.BaseLicense.HttpApi)'
    [14:44:00 INF] Route matched with {area = "baseLicense", controller = "LicenseSubscription", action = "GetLicenseTypeLookup", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.Abp.Application.Dtos.ListResultDto`1[TechDB.BaseLicense.LicenseSubscriptions.LicenseTypeLookupDto]] GetLicenseTypeLookupAsync() on controller TechDB.BaseLicense.LicenseSubscriptions.LicenseSubscriptionController (TechDB.BaseLicense.HttpApi).
    [14:44:00 DBG] PermissionStore.GetCacheItemAsync: pn:U,pk:3a14defd-ddaf-0b84-fd19-326c5165c553,n:BaseLicense.LicenseSubscriptions
    [14:44:00 DBG] Found in the cache: pn:U,pk:3a14defd-ddaf-0b84-fd19-326c5165c553,n:BaseLicense.LicenseSubscriptions
    [14:44:00 DBG] PermissionStore.GetCacheItemAsync: pn:R,pk:admin,n:BaseLicense.LicenseSubscriptions
    [14:44:00 DBG] Found in the cache: pn:R,pk:admin,n:BaseLicense.LicenseSubscriptions
    Exception thrown: 'System.InvalidCastException' in TechDB.BaseLicense.Application.dll
    [14:44:04 ERR] ---------- RemoteServiceErrorInfo ----------
    {
      "code": null,
      "message": "An internal error occurred during your request!",
      "details": null,
      "data": {},
      "validationErrors": null
    }
    
    [14:44:04 ERR] Unable to cast object of type 'SelectListIterator`2[TechDB.BaseLicense.LicenseTypes.LicenseType,&lt;&gt;f__AnonymousType0`2[System.String,System.Guid]]' to type 'System.Collections.Generic.List`1[TechDB.BaseLicense.LicenseTypes.LicenseType]'.
    System.InvalidCastException: Unable to cast object of type 'SelectListIterator`2[TechDB.BaseLicense.LicenseTypes.LicenseType,<>f__AnonymousType0`2[System.String,System.Guid]]' to type 'System.Collections.Generic.List`1[TechDB.BaseLicense.LicenseTypes.LicenseType]'.
       at TechDB.BaseLicense.LicenseSubscriptions.LicenseSubscriptionsAppService.GetLicenseTypeLookupAsync() in /Users/navneet/Documents/myprojects/TechDB/TechDB.Licensing1/TechDB.Licensing/modules/TechDB.BaseLicense/src/TechDB.BaseLicense.Application/LicenseSubscriptions/LicenseSubscriptionsAppService.Extended.cs:line 44
       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.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.Auditing.AuditingInterceptor.ProceedByLoggingAsync(IAbpMethodInvocation invocation, AbpAuditingOptions options, IAuditingHelper auditingHelper, IAuditLogScope auditLogScope)
       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.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_method6410(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.&lt;InvokeActionMethodAsync&gt;g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
       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)
    [14:44:04 INF] Executing ObjectResult, writing value of type 'Volo.Abp.Http.RemoteServiceErrorResponse'.
    [14:44:04 INF] Executed action TechDB.BaseLicense.LicenseSubscriptions.LicenseSubscriptionController.GetLicenseTypeLookupAsync (TechDB.BaseLicense.HttpApi) in 4392.2582ms
    [14:44:04 INF] Executed endpoint 'TechDB.BaseLicense.LicenseSubscriptions.LicenseSubscriptionController.GetLicenseTypeLookupAsync (TechDB.BaseLicense.HttpApi)'
    [14:44:04 DBG] Added 0 entity changes to the current audit log
    [14:44:04 DBG] Added 0 entity changes to the current audit log
    [14:44:04 INF] Request finished HTTP/2 GET https://localhost:44334/api/base-license/license-subscriptions/GetLicenseTypeLookup - 500 null application/json; charset=utf-8 4728.0972ms
    
    
  • User Avatar
    0
    Navneet@aol.com.au created

    Sorry, found the issue, there was a typing mistake.

    Could you please refund this ticket?

  • User Avatar
    0
    liangshiwei created
    Support Team Fullstack Developer

    okay

Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.0.0-preview. Updated on July 11, 2025, 11:35