https://learn.microsoft.com/en-us/dotnet/standard/serialization/system-text-json/migrate-from-newtonsoft?pivots=dotnet-9-0#non-public-property-setters-and-getters
You can either mark it as [JsonInclude] or you need to remove the private setter.
Can you also please search the rest of the code for where this could be an issue. An urgent hotfix would be greatly appreciated as 13.1.0 is currently broken with features and redis.
Thanks Rick
The issue is the private setter on the TenantFeatureCacheItem FeatureValues property.
If I remove the private setter and make it public then System.Text.Json can deserialize it correctly to the object required.
With the private setter it does not work.
Further debugging has found this is a problem due to the updates to the serialization as well.
See this fiddle to show the issue. https://dotnetfiddle.net/SoyH6m
Thanks ismcagdas.
That works. Was trying to avoid it and stick to native metronic. Does that mean most of the metronic things that rely on native bootstrap won't work?
Hi MightyIt,
We also had this problem (happens with lots of different hosting proxies, including cloudflare, azure app services etc).
But the file we modify is in angular\src\assets\abp-web-resources\abp.js
This file doesn't change when we upgrade any node modules to my knowledge and when we upgrade aspnetzero we're just careful on the merge to make sure it retains our value.
Rick
I believe I've had a similar issue. https://support.aspnetzero.com/QA/Questions/11843/Receiving-this-error-httpsgithubcomaspnetboilerplateaspnetboilerplateissues6755
It was related to the version of Visual Studio I was running. In particular preview versions. I believe if you want to run the latest preview version of visual studio you will need to upgrade to 13.1 (which is not yet release) which has the fixes for this in it.
However I haven't yet tested it all yet as I'm waiting for 13.1 to come up fully and not be release candidate.
Hi @oguzhanagir,
We are already running the per request cache setup. The error comes from the MiniExcelExcelExporterBase.cs line 39 where is does the _tempFileCacheManager.SetFile
If you have a large amount of data the stream.ToArray can be quite large, this can timeout the save to Redis. We had it with a grid that had around 1000 rows to export and probably 10 columns.
I also just generally don't think redis is the best choice when dealing with temporary files. It's better than the local file system (which doesn't load balance) but we are likely to update the tempfilecachemanager to use Azure Storage (which we've already got an implementation for in our binaryobjectstore.
Thanks Rick
Just to add here. I was previously running VS 17.9.0 Preview 2 and Preview 3. Both of these have the problem with the above error.
I uninstalled my Visual Studios and went back to VS 17.8.5 the stable release and it's working again now.
Something in the upcoming Visual Studios breaks the ASP Boilerplate stuff prior to version 4.1 (or Aspnet Zero anything prior to v 13).
Not sure what it is but at least I'm running again.
ERROR 2024-01-17 14:22:44,909 [9 ] nostics.DeveloperExceptionPageMiddleware - An unhandled exception has occurred while executing the request. Castle.MicroKernel.Handlers.HandlerException: Can't create component 'Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider_8fe94c57-4043-438a-95e5-44fb6fc328fe' as it has dependencies to be satisfied.
'Microsoft.AspNetCore.Mvc.ApiExplorer.IApiDescriptionProvider_8fe94c57-4043-438a-95e5-44fb6fc328fe' is waiting for the following dependencies:
Service 'Microsoft.Extensions.DependencyInjection.IServiceProviderIsService' which was not registered.
at Castle.MicroKernel.Handlers.DefaultHandler.AssertNotWaitingForDependency() at Castle.MicroKernel.Handlers.DefaultHandler.ResolveCore(CreationContext context, Boolean requiresDecommission, Boolean instanceRequired, Burden& burden) at Castle.MicroKernel.Handlers.DefaultHandler.Resolve(CreationContext context, Boolean instanceRequired) at Castle.MicroKernel.DefaultKernel.ResolveComponent(IHandler handler, Type service, Arguments additionalArguments, IReleasePolicy policy, Boolean ignoreParentContext) at Castle.MicroKernel.DefaultKernel.Castle.MicroKernel.IKernelInternal.ResolveAll(Type service, Arguments arguments, IReleasePolicy policy) at Castle.Windsor.MsDependencyInjection.MsCompatibleCollectionResolver.Resolve(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency) at Castle.MicroKernel.Resolvers.DefaultDependencyResolver.TryResolveCore(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency, Object& value) at Castle.MicroKernel.Resolvers.DefaultDependencyResolver.Resolve(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency) at Castle.MicroKernel.ComponentActivator.DefaultComponentActivator.CreateConstructorArguments(ConstructorCandidate constructor, CreationContext context) at Castle.MicroKernel.ComponentActivator.DefaultComponentActivator.Instantiate(CreationContext context) at Castle.MicroKernel.ComponentActivator.DefaultComponentActivator.InternalCreate(CreationContext context) at Castle.MicroKernel.ComponentActivator.AbstractComponentActivator.Create(CreationContext context, Burden burden) at Castle.MicroKernel.Lifestyle.AbstractLifestyleManager.CreateInstance(CreationContext context, Boolean trackedExternally) at Castle.MicroKernel.Lifestyle.SingletonLifestyleManager.Resolve(CreationContext context, IReleasePolicy releasePolicy) at Castle.MicroKernel.Handlers.DefaultHandler.ResolveCore(CreationContext context, Boolean requiresDecommission, Boolean instanceRequired, Burden& burden) at Castle.MicroKernel.Handlers.DefaultHandler.Resolve(CreationContext context, Boolean instanceRequired) at Castle.MicroKernel.Resolvers.DefaultDependencyResolver.ResolveFromKernelByType(CreationContext context, ComponentModel model, DependencyModel dependency) at Castle.MicroKernel.Resolvers.DefaultDependencyResolver.TryResolveCore(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency, Object& value) at Castle.MicroKernel.Resolvers.DefaultDependencyResolver.Resolve(CreationContext context, ISubDependencyResolver contextHandlerResolver, ComponentModel model, DependencyModel dependency) at Castle.MicroKernel.ComponentActivator.DefaultComponentActivator.CreateConstructorArguments(ConstructorCandidate constructor, CreationContext context) at Castle.MicroKernel.ComponentActivator.DefaultComponentActivator.Instantiate(CreationContext context) at Castle.MicroKernel.ComponentActivator.DefaultComponentActivator.InternalCreate(CreationContext context) at Castle.MicroKernel.ComponentActivator.AbstractComponentActivator.Create(CreationContext context, Burden burden) at Castle.MicroKernel.Lifestyle.AbstractLifestyleManager.CreateInstance(CreationContext context, Boolean trackedExternally) at Castle.MicroKernel.Lifestyle.AbstractLifestyleManager.Resolve(CreationContext context, IReleasePolicy releasePolicy) at Castle.MicroKernel.Handlers.DefaultHandler.ResolveCore(CreationContext context, Boolean requiresDecommission, Boolean instanceRequired, Burden& burden) at Castle.MicroKernel.Handlers.DefaultHandler.Resolve(CreationContext context, Boolean instanceRequired) at Castle.MicroKernel.DefaultKernel.ResolveComponent(IHandler handler, Type service, Arguments additionalArguments, IReleasePolicy policy, Boolean ignoreParentContext) at Castle.MicroKernel.DefaultKernel.Castle.MicroKernel.IKernelInternal.Resolve(Type service, Arguments arguments, IReleasePolicy policy, Boolean ignoreParentContext) at Castle.MicroKernel.DefaultKernel.Resolve(Type service, Arguments arguments) at Castle.Windsor.MsDependencyInjection.ScopedWindsorServiceProvider.GetServiceInternal(Type serviceType, Boolean isOptional) at lambda_method3424(Closure, Object, HttpContext, IServiceProvider) at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) at Abp.AspNetZeroCore.Web.Authentication.JwtBearer.JwtTokenMiddleware.<>c__DisplayClass0_0.<<UseJwtTokenMiddleware>b__0>d.MoveNext() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context) at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext context)
@ismcagdas I also had problems with this. We were looking at moving TempFileCacheManager to use our storage provider instead of using Redis. When you want to export a grid with quite a bit of data in it, the redis cache just blows up with timeouts.