Hvordan bygge en enkel Twitter Widget med ASP.NET

I denne veiledningen vil jeg gå gjennom hvordan du skriver en Twitter-widget for ASP.NET i form av en gjenbrukbar serverkontroll som er komplett med fine ting som automatisk å slå webadresser til koblinger og cache for å øke hastigheten på sidetilpasningstider.


Trinn 1 Komme i gang

For å følge denne opplæringen er alt du trenger, Visual Studio (Du kan bruke MonoDevelop hvis du ikke er på Windows, selv om det ikke er noen garantier der.) Hvis du ikke ønsker å gaffel over kontanter for den fullstendige versjonen av Visual Studio, kan ta tak i den gratis Express Edition.

Du trenger også kunnskap om C # 3.0, da denne opplæringen gjør bruk av noen av de nyere funksjonene i språket, for eksempel lambda-uttrykk og Var søkeord.


Trinn 2 Opprette kontrollen

ASP.NET inneholder en praktisk funksjon som kalles Server Controls. Disse er egendefinerte koder som tar sikte på å hjelpe utviklere til å strukturere sin kode. Når en side som bruker en serverkontroll, blir forespurt, utfører ASP.NET runtime Render () metode og inkluderer produksjonen i den endelige siden.

Når du har opprettet et nytt webprogram i Visual Studio, høyreklikker du i Solution Explorer og legger til et nytt element i løsningen. Velg ASP.NET Server Control, og gi den et navn. Her har jeg kalt det Twidget.cs, men du er velkommen til å ringe det uansett hva du liker. Lim inn følgende kode i, og vær ikke bekymret hvis alt ser litt utlandet - jeg skal forklare det hele kort tid.

 bruker system; bruker System.Collections.Generic; bruker System.Linq; bruker System.Web; bruker System.Web.UI; bruker System.Web.Script.Serialization; bruker System.Net; namespace WebApplication1 offentlig klasse Twidget: Control public string Konto get; sett;  offentlige int Tweets get; sett;  beskyttet overstyring ugyldig Render (HtmlTextWriter-skribent) writer.Write ("
    "); foreach (var t i GetTweets (). Ta (Tweets)) writer.Write ("
  • 0
  • ", HttpUtility.HtmlEncode (t)); writer.Write ("
"); offentlig liste GetTweets () var ls = ny liste(); var jss = ny JavaScriptSerializer (); var d = jss.Dererialisere>> (ny WebClient () .DownloadString ("http://api.twitter.com/1/statuses/user_timeline.json?screen_name=" + Konto)); foreach (var x i d) ls.Add ((streng) x ["text"]); return ls;

Dette handler om så grunnleggende som du kan få for en Twitter-widget. Slik fungerer det:

Når en bruker ber om en side med denne kontrollen på den, Render () Metoden blir utført med a HtmlTextWriter passert som en parameter. Det skriver ut