5

So che è possibile restituire più risultati da una stored procedure e tramite il metodo generato dal progettista.È possibile restituire più set di risultati utilizzando ExecuteQuery in Linq su Sql?

Tuttavia, sto cercando di fare lo stesso utilizzando ExecuteQuery ma non sembra possibile. Qualcuno ha provato o sa se è possibile?

Fondamentalmente sto cercando di eseguire una stored procedure ad hoc. Ad hoc, intendo una stored procedure che non era disponibile in fase di progettazione.

+2

Appare l'ExecuteQuery, poiché restituisce sempre IENumerable, elaborerà sempre solo il primo gruppo di risultati. Si vorrà invece lavorare con IMultipleResults. [Questo] (http://msdn.microsoft.com/en-us/library/system.data.linq.imultipleresults.aspx) potrebbe essere un punto di partenza. –

+0

@RossPresser: il tuo commento sembra rispondere esattamente alla domanda, fornendo una spiegazione e indicando anche una possibile soluzione per il problema in questione. Ti preghiamo di considerare la conversione del tuo commento in una risposta. –

risposta

-1

Sì, è possibile aggiungere il proprio metodo nel file di Global.CS, che può restituire il DataSet con i molteplici risultati da tavolo,

Si può fare qualcosa di simile.

public DataSet DealClientSearchSelectTest(int ID,int PageIndex, string SearchStr) 
{ 
try 
{ 
return GlobalCls.ExecuteStoredProcedure("Sp_test " + SectionID + "," + ID + '" + SearchStr + "'"); 
} 
catch (Exception) 
{ 
throw; 
} 
} 
+0

Questa non è una risposta. Non è nemmeno rilevante. – leppie