Parametri StoredProcedure

mercoledì 08 ottobre 2003 - 14.19

050782 Profilo | Junior Member

devo richiamare una storedprocedure passandogli anche dei parametri, ma quando esegue queste righe:

Dim myParColl As SqlClient.SqlParameterCollection
myParColl.Add(valore)

mi dà il seguente errore sulla seconda:
Oggetto non riferito ad un'istanza di oggetto

come posso fare... non posso assegnare un parametro per volta, mi serve una cosa più dinamica (come questa che va in errore)

Brainkiller Profilo | Guru

Evidentemente la variabile/oggetto valore non è stato instanziato.
Ti risulta? Di che tipo è?

Ti posto brevemente un codice che di solito uso io per aggiungere a sequenza vari parametri, è in C# spero non sia per te difficile codificarlo in VB.NET visto che è molto simile, per lo meno una volta che capisci il funzionamento, il gioco è fatto:


SqlCommand SP= new SqlCommand("NomeDellaSP", sqlConn);
SP.CommandType = CommandType.StoredProcedure;

SqlParameter par=SP.Parameters.Add("@Title", SqlDbType.NVarChar, 100);
par.Value=Titolo.Text;

par=SP.Parameters.Add("@Body", SqlDbType.NVarChar,8000);
par.Value=Body.Text;

Ciao
David De Giacomi

050782 Profilo | Junior Member

IN QUESTO MODO FUNZIONA BENE ANCHE IN VB, MA VOLEVO USARE L'OGG. SQLPARAMETERCOLLECTION.

Brainkiller Profilo | Guru

Prova così:

SqlCommand SP= new SqlCommand("NomeDellaSP", sqlConn);
SP.CommandType = CommandType.StoredProcedure;

SqlParameterCollection g=SP.Parameters;
SqlParameter par=new SqlParameter("Nome",SqlDbType.NVarChar,10);
par.Value="Prova";
g.Add(par);

Alla fine SP.Parameters cioè la "proprietà" dell'oggetto SqlCommand chiamata Parameters è di tipo SqlParameterCollection.

Ciao
David De Giacomi

050782 Profilo | Junior Member

però così non risolvo nulla!
vorrei usare sqlParameterCollection perchè evito qualche riga di codice:

Dim myParColl As SqlClient.SqlParameterCollection
myParColl .Add(valore1)
myParColl .Add(valore2)

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5