Не удалось загрузить файл или сборку - PullRequest
0 голосов
/ 20 сентября 2019

Я недавно обновился до последней версии .net core 3.0 SDK, обновил все свои нюгеты, добавив также предварительные версии, однако я постоянно получаю эту ошибку, когда пытаюсь что-то сделать с Pomeolo / Entity Framework с MySQL.

System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Extensions.Configuration.Abstractions, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. An operation is not legal in the current state. (0x80131509)
File name: 'Microsoft.Extensions.Configuration.Abstractions, Version=2.2.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
 ---> System.InvalidOperationException: AssemblyLoadContext is unloading or was already unloaded.
   at System.Runtime.Loader.AssemblyLoadContext.VerifyIsAlive()
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyPath(String assemblyPath)
   at AltV.Net.Host.ResourceAssemblyLoadContext.Load(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
   at Microsoft.EntityFrameworkCore.Storage.Internal.NamedConnectionStringResolverBase.ResolveConnectionString(String connectionString)
   at Microsoft.EntityFrameworkCore.Storage.RelationalConnection..ctor(RelationalConnectionDependencies dependencies)
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetService[T](IServiceProvider provider)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)
   at Microsoft.EntityFrameworkCore.DbContext.get_DbContextDependencies()
   at Microsoft.EntityFrameworkCore.DbContext.get_InternalServiceProvider()
   at Microsoft.EntityFrameworkCore.DbContext.get_DbContextDependencies()
   at Microsoft.EntityFrameworkCore.DbContext.get_Model()
   at Microsoft.EntityFrameworkCore.Internal.InternalDbSet`1.get_EntityType()
   at Microsoft.EntityFrameworkCore.Internal.InternalDbSet`1.get_EntityQueryable()
   at Microsoft.EntityFrameworkCore.Internal.InternalDbSet`1.System.Linq.IQueryable.get_Provider()
   at System.Linq.Queryable.Where[TSource](IQueryable`1 source, Expression`1 predicate)

Я пробовал стабильные и предварительные версии, этот файл также включен в Nuget, и его версия - 2.2.0.0.Кажется, это проблема с .Net Core 3.0 или Pomelo?

Мой код:

try
            {
                Console.WriteLine("Before Context");
                using Context context = new Context();
                Console.WriteLine("After Context");
                List<Models.Vehicle> vehicles = context.Vehicle.Where(x => x.Spawned).ToList();

                Console.WriteLine($"Resetting {vehicles.Count} Vehicle Spawn Status");

                foreach (Models.Vehicle vehicle in vehicles)
                {
                    vehicle.Spawned = false;
                    context.SaveChanges();
                }

                Console.WriteLine("Completed resetting vehicle spawn statuses");
                context.Dispose();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }

Я получаю эту строку:

 Console.WriteLine("After Context");

Ответы [ 2 ]

0 голосов
/ 21 сентября 2019

Вы должны дождаться .NET Core 3-совместимой версии провайдера Pomelo.

0 голосов
/ 20 сентября 2019

Вы должны использовать точно такую ​​же предварительную версию .NET Core, ASP.NET Core и EF Core.Убедитесь, что все пакеты из dotnet или aspnet rc1 на данный момент.Если некоторые зависимости (включая прямые и косвенные) в вашем проекте зависят от каких-либо пакетов 2.2, которые относятся к dotnet или aspnet и имеют новую версию 3.0, укажите их как версию 3.0 rc1 из вашегособственный проект явно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...