ASP.NET - Controlli 4
FileUpload
- Il controllo ‘FileUpload’ permette di inviare un file al server Web.
- Una volta inserito dalla ToolBox, appare come una Label e un Button anche se poi in esecuzione il Button è a sinistra della Label. Nella Label appare il nome del file selezionato dall’utente.
- L'esempio seguente mostra un utilizzo del controllo. Vengono verificati: la presenza del file, l'estensione e la dimensione del file. Il codice può essere inserito nell’evento Click() di un Button. In questo esempio il controllo ha l’ID ‘flu’.
// Check for the file
if (flu.HasFile)
{
// Check for the extension
string ext = System.IO.Path.GetExtension(flu.FileName);
if (ext.ToLower() == ".txt")
{
// Check for dimension
if (flu.PostedFile.ContentLength <= 1024)
{
// Upload here
flu.SaveAs(Server.MapPath("~/Uploads/" + flu.FileName));
Response.Write("File uploaded!");
}
else
{
Response.Write("Selezionare solo file di dimensione minore o uguale a 1024 bytes!");
}
}
else
{
Response.Write("Selezionare solo file 'TXT'!");
}
}
else
{
Response.Write("Selezionare un file!");
}
AdRotator
- Il controllo ‘AdRotator’ è utilizzato per mostrare una immagine casuale presa da un insieme di immagini. L’immagine mostrata cambia ad ogni Post della pagina.
- Tipicamente lo si usa per immagini pubblicitarie.
- Le informazioni sulle immagini disponibili sono in un file XML oppure in un database.
- Il file XML deve avere i seguenti attributi:
- ImageUrl: URL dell’immagine da mostrare.
- NavigateUrl: URL verso cui navigare quando l’utente clicca sull’immagine.
- AlternateText: testo alternativo in caso di immagine mancante.
- Keyword: parola chiave utilizzata per filtrare le immagini (vedi l’esempio).
- Impressions: valore numerico che dà il peso dell’immagine; più è alto e maggiore è la probabilità che l’immagine sarà mostrata.
- La sezione principale deve essere ‘<Advertisements>’ e ogni immagine deve essere contenuta nella sezione ‘<Ad>’.
- Esempio di file XML:
<?xml version="1.0" encoding="utf-8" ?>
<Advertisements>
<Ad>
<ImageUrl>~/Images/logo_google.png</ImageUrl>
<NavigateUrl>http://www.google.it</NavigateUrl>
<AlternateText>Google www.google.it</AlternateText>
<Impressions>10</Impressions>
<Keyword>Ricerca</Keyword>
</Ad>
<Ad>
<ImageUrl>~/Images/logo_bing.png</ImageUrl>
<NavigateUrl>http://www.bing.it</NavigateUrl>
<AlternateText>Bing www.bing.it</AlternateText>
<Impressions>10</Impressions>
<Keyword>Ricerca</Keyword>
</Ad>
<Ad>
<ImageUrl>~/Images/logo_yahoo.png</ImageUrl>
<NavigateUrl>http://www.yahoo.it</NavigateUrl>
<AlternateText>Yahoo www.yahoo.it</AlternateText>
<Impressions>10</Impressions>
<Keyword>Ricerca</Keyword>
</Ad>
<Ad>
<ImageUrl>~/Images/logo_microsoft.png</ImageUrl>
<NavigateUrl>http://www.microsoft.com</NavigateUrl>
<AlternateText>Microsoft www.microsoft.com</AlternateText>
<Impressions>10</Impressions>
<Keyword>Software</Keyword>
</Ad>
</Advertisements>
- Per collegare il controllo al file XML impostare la proprietà seguente:
AdvertisementFile="~/Images.xml"
- Nel file XML le quattro immagini appartengono a due ‘Keyword’: ‘Ricerca’ e ‘Software’.
- Per far sì che le immagini mostrate abbiano una sola Keyword, impostare la proprietà seguente (se il filtro non esiste, nessuna immagine è mostrata; se invece il filtro è blank, tutte le immagini sono mostrate):
KeywordFilter="Ricerca"
- Per far sì che la pagina sia aperta in un’altra finestra, impostare la proprietà seguente:
Target="_blank"
- Le proprietà precedenti sono impostabili anche da codice C#.