Datasource in HTML e gestione inserimento in code behid

lunedì 25 maggio 2009 - 11.08

dandi.box Profilo | Junior Member

Ciao ho un problemino ... devo gestire l'insert da codebehid utilizzando l'oggetto datasource creato in HTML


nell'HTML ho

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra


mentre nel code behid ho:


//ok
protected void InsertAllegatoButton_Click(object sender, EventArgs e)
{

string path = Request.PhysicalApplicationPath;
path += "documenti\\" + Request.QueryString["id"] + "\\";
Directory.CreateDirectory(path);

FileUpload FileUpload1 = (FileUpload)FormViewAllegati.FindControl("FileUpload1");
TextBox TextBoxDescrizioneAllegato = (TextBox)FormViewAllegati.FindControl("TextBoxDescrizioneAllegato");

if (FileUpload1.FileName.ToString().Length > 0)
{

string nomeFile = FileUpload1.FileName;
nomeFile = nomeFile.Replace("'", " ");
path = path + TextBoxDescrizioneAllegato.Text.ToString().Replace("'", " ") + '@' + nomeFile;
FileUpload1.SaveAs(path);

SqlDataSourceAllegati.DataBind();
GridViewAllegati.DataBind();
SqlDataSourceAllegati.
}

}

praticamente tutto OK ... salvo correttamente il file (lo trovo allegato)... ma come posso eseguire anche la procedura di insert nella tabella??

Grazie mille

Anonimo Profilo | Senior Member

Allora basta richiamare il metodo Insert del controllo SqlDataSourceAllegati.

Ti rimando alla pagina di spiegazione di microsoft per tutti gli eventuali approfondimenti:

http://msdn.microsoft.com/it-it/library/system.web.ui.webcontrols.sqldatasource.insert.aspx

dandi.box Profilo | Junior Member

Grazie per la risp... in che modo "richiamarlo??

intendi SqlDataSourceAllegati.Insert??

ma come/dove passo i parametri?

Thanks

Anonimo Profilo | Senior Member

Allora prima di fare SqlDataSourceAllegati, devi aggiungere eventuali parametri grazie alla proprietà InsertParameter, e poi un po' come tutte le collection usi .Add e inserisci, dopo richiami SqlDataSourceAllegati.Insert().
Anche qui per eventuali approfondimenti sull'argomento ti rimando alla msdn:

http://msdn.microsoft.com/it-it/library/system.web.ui.webcontrols.sqldatasource.insertparameters.aspx

Ciao.

dandi.box Profilo | Junior Member

Grazie per l'aiuto!!

Ho guardato l'esempio ma non spiega come gestire il passaggio di valori ai parametri tramite codebehind :-((

l'esempio fa tutto in HTML

potresti dirmi come fare?

Grazie

Anonimo Profilo | Senior Member

Allora nel tuo caso potresti fare in questa maniera. Cambi il codice nell'aspx come segue:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Nel codice lato server basta che valorizzi prima dell'insert:

NomeFileHidden.Text="prova.txt"; DescrFileHidden.Text="testo descrittivo"; SqlDataSourceAllegati.Insert();

e dovrebbe funzionare tutto. Ciao.

Anonimo Profilo | Senior Member

Di fatto ho cambiato i parameter per gli insert e ho aggiunto due label in basso.

dandi.box Profilo | Junior Member

Ottengo questo errore :-(

Il tipo 'System.Web.UI.WebControls.FormView' non ha proprietà pubbliche denominate 'Label'.

Anonimo Profilo | Senior Member

Ok prova a spostare le Label fuori dal formview allo stesso livello del grid o del datasource e dovrebbe funzionare.

dandi.box Profilo | Junior Member

Grazie per l'aiuto!!

carica il file ma non esegue l'insert (come prima)

dandi.box Profilo | Junior Member

Crea il record ma senza elementi ... due campi vuoti

Anonimo Profilo | Senior Member

Beh un bel passo avanti non è cosa da poco, significa che non gli arrivano i parametri giusti nella stringa di insert, me la riguardo un attimo e vediamo.

Anonimo Profilo | Senior Member

e Già perchè anche il parametro id fornitore deve diventare un formparameter con lo stesso metodo degl'altri due, ti crei una label e associ i dati da codice.

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