Visualizzazione dei risultati da 1 a 10 su 25

Visualizzazione discussione

  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    [VB.NET] Errore su Entity Framework con MySQL: tabella non trovata su eliminazione record correlati

    Ciao a tutti mi sta capitando una cosa un po strana...quando vado ad effettuare il saveChanges() col mio modello EF mi da un errore dicendo che non trova la tabella.

    La cosa strana è che la tabella è li...(così come nel DB), ho pensato a un problema di percorsi ma nella funzione che eseguo non manipolo solo quella tabella e sulle altre non mi da problemi!

    Per ora vi posto il codice della funzione che eseguo fatemi sapere se può servire qualcos'altro! perchè darvi un quadro chiaro di tutto è un po complicato senza allegare una marea di cose!!

    codice:
    Function addMov(ByVal idInOut As Integer, ByVal idCatInOut As Integer, ByVal tipoInOut As Boolean, ByVal desInOut As String, ByVal importoInOut As Decimal,
                        ByVal sicuroInOut As Boolean, ByVal idMov As Integer, ByVal dataMov As Date, ByVal effettuatoMov As Boolean, ByVal rate As Integer,
                        ByVal freq As Integer) As Boolean
    
            Dim myDB As EF_DB = creaMyDB()  //Funzione che genera la copia dell'entity
            Dim myTrans As Entity.DbContextTransaction = myDB.Database.BeginTransaction()
    
            Dim out As Boolean = False
            Try
                Dim inOut As New dati_in_out //istanza della tabella dell'entity
                Dim mov As New movimenti //istanza della tabella dell'entity
                If idInOut > 0 Then
                    inOut = myDB.dati_in_out.Where(Function(d) d.id_InOut = idInOut).Single
                End If
                If idMov > 0 Then
                    mov = myDB.movimenti.Where(Function(m) m.id_Mov = idMov).Single
                End If
    
                With inOut
                    .idCat_InOut = idCatInOut
                    .tipo_InOut = tipoInOut
                    .des_InOut = desInOut
                    .importo_InOut = importoInOut
                    .sicuro_InOut = sicuroInOut
                End With
                myDB.dati_in_out.Add(inOut)
                myDB.SaveChanges()  //nessuna eccezione generata su questa chiamata
    
                For i = 0 To rate - 1
                    With mov
                        .data_Mov = dataMov.AddMonths(freq)
                        .effettuato_Mov = effettuatoMov
                        .idInOut_Mov = inOut.id_InOut
                    End With
                    myDB.movimenti.Add(mov)
                Next
    
                myDB.SaveChanges()  //Questa è la riga che genera l'eccezione
                myTrans.Commit()
                out = True
            Catch ex As Exception
                errMsg(ex)
                myTrans.Rollback()
            Finally
                killMyDB(myDB)
            End Try
            Return out
        End Function
    L'eccezione mi dice che:

    Table 'finanze.finanze.movimenti' doesn't exist"


    Il che, se vogliamo, è anche vero visto che il vero indirizzo dovrebbe essere finanze.movimenti (e non finanze.finanze) come vedere dallo screen fatto in debug durante l'esecuzione della funzione.

    Ma allora perchè sull'altra tabella (dati_in_out) l'errore non si verifica?!?)

    Spero di essermi spiegata bene è davvero complicata
    Immagini allegate Immagini allegate
    Ultima modifica di Veronica80; 10-05-2021 a 13:06

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.