Ciao a tutti, da diversi giorni ho un problema nell'upload di due files:

situazione

due campi per la selezione dei file da uploadare, dato che sono in modifica di un record, se l'utente mi seleziona dei files da caricare (riempiendo uno o entrambi i due campi di input), devo:

caricare il file se selezionato
lasciare inalterato il campo del DB e non caricare nulla se non viene selezionato nulla

(questo ovviamente per entrambi i campi di input)

qualcuno può gentilmente dirmi dove sbaglio?



// salvataggio file da un datagrid

string strBaseLocation = "C:\\Inetpub\\wwwroot\\demo\\Doc\\";

string strFileNameOnServer = ((HtmlInputFile)(E.Item.FindControl("File1"))).Pos tedFile.FileName.Substring(((HtmlInputFile)(E.Item .FindControl("File1"))).PostedFile.FileName.LastIn dexOf(@"\")+1);

string nomefile = "";



// se è stato selezionato un file...

if (strFileNameOnServer!="")

{

if (null != ((HtmlInputFile)(E.Item.FindControl("File1"))).Pos tedFile)

{

try

{


string path = "C:\\Inetpub\\wwwroot\\demo\\Doc\\" + strFileNameOnServer;


if (System.IO.File.Exists(path) == true)

{

nomefile = "copia_"+strFileNameOnServer;

((HtmlInputFile)(E.Item.FindControl("File1"))).Pos tedFile.SaveAs(strBaseLocation+nomefile);

}

else

{

nomefile = strFileNameOnServer;

((HtmlInputFile)(E.Item.FindControl("File1"))).Pos tedFile.SaveAs(strBaseLocation+strFileNameOnServer );

}



lblErrore.Text = "File " + nomefile + " caricato correttamente";


}

catch (Exception exc)

{

lblErrore.Text = "Errore nel salvataggio " +

strBaseLocation+strFileNameOnServer+"

"+ exc.ToString();


Response.Write("<script> alert('Errore nel caricamento del file: " + exc.ToString() + " .');</script>");


}

}

}


// fine salvataggio file






// terminazione del salvataggio del DB

if (nomefile != "")

myCommand.Parameters.Add(new SqlParameter("@Documento1", nomefile));