50 messaggi dal 24 febbraio 2007
ciao a tutti,
ho creato da codice un SqlDataSource che preleva dati attraverso una stored procedure. i risultati della select devono essere visualizzati in un DataView.
di seguito c'è il codice. mi viene restituito un errore sulla dichiarazione del parametro.
cosa sbaglio??



SqlDataSource sds_esami = new SqlDataSource();

sds_esami.ConnectionString = s;

sds_esami.SelectCommand = nome_procedure;
sds_esami.SelectParameters.Add(new SqlParameter("@id_studente", SqlDbType.VarChar));
sds_esami.SelectParameters["@id_studente"].Value = Profile.UserName;

sds_esami.DataSourceMode = CommandType.StoredProcedure;

dv_esami.DataSource = sds_esami;
dv_esami.DataBind();


dv_esami è il DataView

grazie in anticipo per l'aiuto!

punx44
puoi postare i dettagli dell'eccezione?

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
50 messaggi dal 24 febbraio 2007
Errore di compilazione
Descrizione: Errore durante la compilazione di una risorsa necessaria per soddisfare la richiesta. Rivedere i dettagli relativi all'errore e modificare in modo appropriato il codice sorgente.

Messaggio di errore del compilatore: CS1502: La corrispondenza migliore del metodo di overload per 'System.Web.UI.WebControls.ParameterCollection.Add(System.Web.UI.WebControls.Parameter)' presenta alcuni argomenti non validi

Errore nel codice sorgente:

Riga 41:
Riga 42: sds_esami.SelectCommand = nome_procedure;
Riga 43: sds_esami.SelectParameters.Add(new SqlParameter("@id_studente", SqlDbType.VarChar));
Riga 44: sds_esami.SelectParameters["@id_studente"].Value = Profile.UserName;
Riga 45:
Modificato da punx44 il 16 febbraio 2009 15.37 -

punx44
ok adesso è chiaro,SelectParameters è del tipo ParameterCollection e può contenter tutti i webcontrol che ereditato da Parameter(System.Web.UI), non ha nulla a che fare con SqlParameter (System.Data.SqlClient).

SqlDataSource li genera in automatico

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
50 messaggi dal 24 febbraio 2007
e come faccio a specificarli il valore del parametro?

punx44
istanziando uno dei controllo che ereditano da Parameter (System.Web.UI) e passarlo al metodo Add.

ma secondo me non ha senzo creare un SqlDataSource da codice, perche non lo crei nel markup?

o meglio ancora perche non usi Ado.net direttamente?

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
50 messaggi dal 24 febbraio 2007
ad ogni utente può cambiare la store procedure per prelevare i dati dal db. ho risolto cambiando l'assegnazione della store procedure in base all'utente.

grazie dell'aiuto :D

punx44

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.