I'm getting System.NullReferenceException when trying to save changes, using .net core 3.0.0 console project, even with basic implementation.
Code: Select all
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            string connectionString = @"User ID=****;Password=***;Host=****;Service Name=***;Port=1521;Direct=True;;License Key=***";
            ServiceCollection sc = new ServiceCollection();
            sc.AddDbContext<AppDbContext>(f => 
                f.EnableDetailedErrors()
                .UseOracle(connectionString)
                );
            
            using (var sp = sc.BuildServiceProvider())
            using (var scope = sp.CreateScope())
            using (var context = scope.ServiceProvider.GetRequiredService<AppDbContext>())
            {
                
                var b = new Language();
                b.Name = System.Guid.NewGuid().ToString();
                b.Code = System.Guid.NewGuid().ToString();
                context.Languages.Add(b);
                context.SaveChanges();
            }
        }
    }
    public class Language
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Code { get; set; }
    }
    public class AppDbContext : DbContext
    {
        public DbSet<Language> Languages { get; set; }
        public AppDbContext(
            DbContextOptions<AppDbContext> options
            ) : base(options)
        {
        }
    }Project
Code: Select all
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Devart.Data.Oracle.EFCore" Version="9.9.887" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="3.0.1" />
  </ItemGroup>
</Project>
Code: Select all
   at Microsoft.EntityFrameworkCore.Metadata.Internal.Property.OnAnnotationSet(String name, IConventionAnnotation annotation, IConventionAnnotation oldAnnotation)
   at Microsoft.EntityFrameworkCore.Metadata.Internal.ConventionAnnotatable.OnAnnotationSet(String name, Annotation annotation, Annotation oldAnnotation)
   at Microsoft.EntityFrameworkCore.Infrastructure.Annotatable.SetAnnotation(String name, Annotation annotation, Annotation oldAnnotation)
   at Microsoft.EntityFrameworkCore.Infrastructure.Annotatable.AddAnnotation(String name, Annotation annotation)
   at Microsoft.EntityFrameworkCore.Infrastructure.Annotatable.AddAnnotation(String name, Object value)
   at Devart.Data.Oracle.Entity.ai..ctor(IPropertyBase A_0)
   at Devart.Data.Oracle.Entity.ag.a(StringBuilder A_0, ModificationCommand A_1, String A_2, w A_3)
   at Devart.Data.Oracle.Entity.ag.AppendInsertOperation(StringBuilder commandText, ModificationCommand command, Int32 commandPosition)
   at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.UpdateCachedCommandText(Int32 commandPosition)
   at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.GetCommandText()
   at Devart.Common.Entity.cp.CreateStoreCommand()
   at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.Execute(IRelationalConnection connection)
   at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.Execute(DbContext _, ValueTuple`2 parameters)
   at Microsoft.EntityFrameworkCore.Storage.Internal.NoopExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
   at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.Execute(IEnumerable`1 commandBatches, IRelationalConnection connection)
   at Microsoft.EntityFrameworkCore.Storage.RelationalDatabase.SaveChanges(IList`1 entries)
   at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChanges(IList`1 entriesToSave)
   at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChanges(Boolean acceptAllChangesOnSuccess)
   at Microsoft.EntityFrameworkCore.DbContext.SaveChanges(Boolean acceptAllChangesOnSuccess)
   at Microsoft.EntityFrameworkCore.DbContext.SaveChanges()