Servant-Software-LLC / FileBased.DataProviders

ADO.NET & EF Core Data Providers for common serializable formats (JSON, XML, and CSV) stored to disk.
2 stars 1 forks source link

Support for JSON with trailing comma #57

Closed DaveRMaltby closed 7 months ago

DaveRMaltby commented 7 months ago

The inner exception 2 has the error message shown below...

System.Reflection.TargetInvocationException
  HResult=0x80131604
  Message=Exception has been thrown by the target of an invocation.
  Source=System.Private.CoreLib
  StackTrace:
   at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   at SettingsOnEF.Extensions.DbContextExtensions.GetEntityCount(DbContext context, Type entityType)
   at SettingsOnEF.SettingsManager.EnsureAllEntitiesHaveARow()
   at SettingsOnEF.SettingsManager..ctor(Action`1 configureContextForDatabase)
   at SettingsOnEF.Json.JsonSettingsManager..ctor(FileInfo jsonSettingsPath, Nullable`1 logLevel)
   at SettingsOnEF.Json.JsonSettingsManager..ctor(String companyName, String productName, Nullable`1 logLevel)
   at MockDB.GraphQL.IoC.ConfigureServices.<>c.<AddProjectGraphQL>b__0_0(IServiceProvider sp) in C:\Dev\MockDB\src\GraphQL\IoC\ConfigureServices.cs:line 22
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSiteMain(ServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitRootCache(ServiceCallSite callSite, RuntimeResolverContext context)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(ServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, RuntimeResolverContext context)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSiteMain(ServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitRootCache(ServiceCallSite callSite, RuntimeResolverContext context)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(ServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.Resolve(ServiceCallSite callSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceProvider.CreateServiceAccessor(Type serviceType)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Extensions.DependencyInjection.ServiceProvider.GetService(Type serviceType, ServiceProviderEngineScope serviceProviderEngineScope)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)
   at MockDB.GraphQL.IoC.ConfigureServices.<>c.<AddProjectGraphQL>b__0_5(IServiceProvider sp) in C:\Dev\MockDB\src\GraphQL\IoC\ConfigureServices.cs:line 47
   at Microsoft.Extensions.DependencyInjection.SchemaRequestExecutorBuilderExtensions.<>c__DisplayClass71_0`1.<AddTypeModule>b__0(IServiceProvider sp, RequestExecutorSetup c)
   at Microsoft.Extensions.DependencyInjection.RequestExecutorBuilderExtensions.<>c__DisplayClass16_1.<Configure>b__1(RequestExecutorSetup options)
   at Microsoft.Extensions.Options.OptionsFactory`1.Create(String name)
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)

  This exception was originally thrown at this call stack:
    [External Code]

Inner Exception 1:
TableNotFoundException: Table 'GeneralSettings' not found as file, GeneralSettings.json, in 'C:\ProgramData\ServantSoftware\MockDB\Settings'

Inner Exception 2:
JsonReaderException: The JSON object contains a trailing comma at the end which is not supported in this mode. Change the reader options. LineNumber: 7 | BytePositionInLine: 2.