15 messaggi dal 10 maggio 2012
Salve ragazzi,
chiedo aiuto a voi per un qualcosa su cui mi sono arenato pur leggendo quasi tutta la documentazione ufficiale.
Sto aggiornando un vecchio progetto winform che accede ai dati contenuti in un database Sql, il progetto funzionava perfettamente con un Dataset ma adesso sto eliminando il dataset per passare ad Entity Framework. Il problema mi sorge quando voglio sfruttare le Stored Procedure che restituisono dati complessi presenti nel database, in pratica ho importato la Stored Procedure nel Model Browser come indicato in MSDN e ho creato il complex type ma quando vado a scrivere il codice che deve farmi visualizzare i dati, nel mio form non vedo risultati.

Il codice che uso è semplicissimo:

Using ctx As New MOMEntities1
            Dim pre = ctx.Dafatturare(id)
            DataGridView1.DataSource = pre
        End Using


mentre la Stored Procedure è la seguente:

ALTER PROCEDURE dbo.STORED_SELECTPrestazioniDaFatturare
  (@IdCliente BIGINT)
AS
SELECT Mese,SUM(Unitario * Quantità) FROM Prestazioni WHERE (IdCliente = @IdCliente) GROUP BY Mese
  
RETURN
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
metti un breakpoint su questa riga:
DataGridView1.DataSource = pre

Quando il debugger di Visual Studio interromperà l'esecuzione in quel punto, porta il mouse sopra la variabile pre e verifica che contenga i dati che ti aspetti.
Se riesci a vedere i dati, possiamo escludere Entity Framework dalle cause del problema.

ciao,
Moreno

Enjoy learning and just keep making
15 messaggi dal 10 maggio 2012
Grazie BrightSoul,
già fatto e a quanto pare la variabile non contiene nulla, rimane completamente vuota, la cosa che ho notato provando ad utilizzare altre stored procedure è che funziona solo se la SP riporta per intero una tabella, se c'è anche il più banale dei filtri non funziona.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.