di: Giuseppe Marchi 09 Luglio 2008
Come abbiamo accennato, possiamo effettuare le nostre ricerche anche sulle immagini. L'approccio è quello già visto, quello che cambia è la configurazione della nostra richiesta, in quanto specificheremo una sorgente (Source) differente.
protected void Search(object sender, EventArgs e)
{
MSNSearchService service = new MSNSearchService();
// definisce la sorgente di immagini e i campi
SourceRequest imageSource = new SourceRequest();
imageSource.Source = SourceType.Image;
imageSource.ResultFields = ResultFieldMask.Image | ResultFieldMask.Url;
SearchRequest request = new SearchRequest();
request.AppID = "...";
request.Requests = new SourceRequest[] { imageSource };
request.Query = txt.Text;
SearchResponse response = service.Search(request);
if (response.Responses.Length > 0)
{
results.DataSource = response.Responses[0].Results;
results.DataBind();
}
}
Infine, dobbiamo formattare i risultati per fare in modo di stampare a video le immagini trovate.
SearchImages.aspx
<asp:TextBox ID="txt" runat="server" />
<asp:Button ID="btnSearch" runat="server" Text="Search" onclick="Search" />
<hr />
<asp:Repeater ID="results" runat="server">
<ItemTemplate>
<%# FormatResult(Eval("Url"), Eval("Title"), Eval("Image")) %>
<%# Eval("Description") %><br />
<span style="text-decoration: underline"><%# Eval("Url") %></span>
<hr />
</ItemTemplate>
</asp:Repeater>
SearchImages.aspx.cs
protected string FormatResult(object title, object url, object image)
{
string address = (image == null) ? String.Format("{0}", url) : String.Format("{0}", title);
StringBuilder html = new StringBuilder();
html.AppendFormat("<a href='{0}' title='{1}'>", address, title);
if (image != null)
html.AppendFormat("<img src='{0}' alt='{1}' border='0' />", ((com.live.search.soap.Image)image).ImageURL, title);
else
html.AppendFormat("{0}", title);
html.Append("</a><br />");
return html.ToString();
}
Abbiamo aggiunto la funzionalità di ricerca di immagini alla nostra applicazione ASP.NET con uno sforzo veramente minimo. Chiaramente questo è un esempio e deve essere trattato come tale, in quanto, giusto per dirne una, potremmo creare delle thumbnail in automatico per migliorare l'aspetto dell'elenco dei risultati.
Abbiamo visto come sfruttare le API messe a disposizione da Live Search per la ricerca da uno o più tipi di fonti, in accordo con le teorie attuali su cui si basano le architetture SOA. È importante notare con quanta facilità si possono ottenere ottimi risultati utilizzando il Web service di Live Search, per arricchire di ricerche efficaci le nostre applicazioni Web.
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Corso Progettazione database11 Maggio 2012 a Milano |
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |