TypeLoadException: Kaedah 'Create' tidak ditemui dalam jenis 'MySql.Data.EntityFrameworkCore.Query.Internal.MySQLSqlTranslatingExpressionVisitorFactory'
P粉502608799
P粉502608799 2023-10-22 20:34:52
0
1
560

Saya cuba menambah pengguna baharu pada pangkalan data menggunakan kod berikut:

public async void SeedUsers(){
    int count=0;
    if(count>0){
        return;
    }
    else{
        string email="jujusafadinha@outlook.com.br";
        _context.Add(new User{LoginEmail=email});  
        await _context.SaveChangesAsync();  
    }
}

Tetapi ia terus memberi saya ralat berikut:

System.TypeLoadException: > Kaedah 'Buat' dalam jenis 'MySql.Data.EntityFrameworkCore.Query.Internal.MySQLSqlTranslatedExpressionVisitorFactory' dalam pemasangan 'MySql.Data.EntityFrameworkCore.Query.Internal.MySQLSqlTranslatedExpressionVisitorFactory' dalam pemasangan 'MySql.Data.EntityFrame. = c5687fc88969c44d ' Tidak dilaksanakan. di MySql.Data.EntityFrameworkCore.Extensions.MySQLServiceCollectionExtensions.AddEntityFrameworkMySQL(IServ>iceCollection service) di MySql.Data.EntityFrameworkCore.Infrastruct.Internal.MySQLOptionsExtension.ApplyServices(perkhidmatan IServiceColle>ction) di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.ApplyServices(IDbContextOptions > Options, ServiceCollection Services) di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.c__DisplayClass4_0.b__2(Int64 k) dalam System.Collections.Concurrent.ConcurrentDictionary2.GetOrAdd(TKey key, Func2 valueFactory) di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.GetOrAdd(Pilihan IDbContextOptions, >Pembekal BooleanDiperlukan) di Microsoft.EntityFrameworkCore.DbContext.get_InternalServiceProvider() di Microsoft.EntityFrameworkCore.DbContext.get_DbContextDependency() di Microsoft.EntityFrameworkCore.DbContext.EntryWithoutDetectChanges[TEntity](Tentity entiti) di Microsoft.EntityFrameworkCore.DbContext.SetEntityState[TEntity](Tentity entiti, EntityState >entityState) di Microsoft.EntityFrameworkCore.DbContext.Add[TEntity](Tentity entiti) Dalam D:devcontatinapiDataSeedData.cs di contatinApi.Data.SeedData.SeedUsers(): baris 24 di System.Threading.Tasks.Task.<>c.b__139_1(ObjectState) di System.Threading.QueueUserWorkItemCallback.<>c.<.cctor>b__6_0(QueueUserWorkItemCallback quwi) di System.Threading.ExecutionContext.RunForThreadPoolUnsafe[TSate](ExecutionContext >executionContext, Action`1 callback, TState& state) dalam System.Threading.QueueUserWorkItemCallback.Execute() dalam System.Threading.ThreadPoolWorkQueue.Dispatch() Dalam System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Kelas pengguna:

public class User
    {
        public int Id{get;set;}
        public string LoginEmail{get;set;}
        public string UserName{get;set;}
        public DateTime CreatedAt{get;set;}
        public List<Contact> Contacts {get;set;}
        public List<ContactList> ContactLists{get;set;}
    }

Pakej EF Core dan MySQL telah dikemas kini. Juga, saya cuba menggunakan prosedur tersimpan dan ia memberikan hasil yang sama.

Kandungan

Cth ialah:

Nilai Ex ialah {System.TypeLoadException: Kaedah "Create" dalam jenis "MySql.Data.EntityFrameworkCore.Query.Internal.MySQLSqlTranslatedExpressionVisitorFactory" dalam perhimpunan "MySql.Data.EntityFrameworkCore.2.80.PublicityFrameworkCore", version2.80.0 culture. =c5687fc88969c44d' tidak dilaksanakan. di MySql.Data.EntityFrameworkCore.Extensions.MySQLServiceCollectionExtensions.AddEntityFrameworkMySQL(IServiceCollection service) di MySql.Data.EntityFrameworkCore.Infrastruct.Internal.MySQLOptionsExtension.ApplyServices(perkhidmatan IServiceCollection) di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.ApplyServices(pilihan IDbContextOptions, perkhidmatan ServiceCollection) di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.<>c__DisplayClass4_0.g__BuildServiceProvider|3() di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.<>c__DisplayClass4_0.b__2(Int64 k) dalam System.Collections.Concurrent.ConcurrentDictionary2.GetOrAdd(TKey key, Func2 valueFactory) di Microsoft.EntityFrameworkCore.Internal.ServiceProviderCache.GetOrAdd(pilihan IDbContextOptions, Boolean providerRequired) di Microsoft.EntityFrameworkCore.DbContext.get_InternalServiceProvider() di Microsoft.EntityFrameworkCore.DbContext.get_DbContextDependency() di Microsoft.EntityFrameworkCore.DbContext.Microsoft.EntityFrameworkCore.Internal.IDbContextDependency.get_StateManager() di Microsoft.EntityFrameworkCore.Internal.InternalDbSet1.EntryWithoutDetectChanges(TEntity 实体) 在 Microsoft.EntityFrameworkCore.Internal.InternalDbSet1.Add(Tentity entiti) Di contatinApi.Data.SeedData.SeedUsers() dalam D:devContatinApiDataSeedData.cs: baris 40}


P粉502608799
P粉502608799

membalas semua(1)
P粉578680675

Jika anda menggunakan Microsoft.EntityFrameworkCore 5.0, sila turun tarafnya kepada Microsoft.EntityFrameworkCore 3.1.10 MySQL EF 8.0.22 pada masa ini tidak serasi dengan Microsoft.EntityFrameworkCore 5.0

Saya mempunyai kod berfungsi sehingga saya menaik taraf kepada Microsoft.EntityFrameworkCore 5.0, kemudian saya mendapat ralat yang sama, diturunkan taraf dan ia berfungsi!

Berharap untuk menyiarkan laporan pepijat di Forum Pepijat MySQL

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan