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