C# - Szöveges adat szolgáltatása ASP.NET-tel, másképp

Szöveges kimenet 2. rész

forráskód letöltése
Múlt heti cikkünkben bemutattunk egy megoldást, hogy miként tudunk csupán szöveges kimenetet eredményező ASP.NET-es alkalmazást készíteni. Mostani példánknál is ez a cél, viszont a megközelítés módszere merőben más lesz.
A mellékelt példából megtudhatjuk, hogy miként hozhatunk létre ASHX kiterjesztésű állományokat és hogyan használhatjuk fel saját alkalmazásunkban.
Nézzük először, hogy mi is az ASHX állomány. Ez egy olyan szöveges állomány, mely forráskódot tartalmazhat és képes HTTP kérések feldolgozására. Ez a modul viszont független az ASP.NET rendszerétől olyan szinten, hogy nincs rá hatással a web.config, illetve a machine.config állomány beállítása. Tekinthetjük ezt a HTTP kérés feldolgozó modult önálló internetes modulnak.
Ennek a modulnak tartalmaznia kell egy osztályt, mely az IHttpHandler interfészből származik. Ezen belül a ProcessRequest függvény lesz az a belépési pont, mely meghívásra kerül az egyes kérések beérkezésekor. Itt paraméterként kapunk egy HttpContext osztályt, melyből megtudhatjuk a kérés jellegét és az eredményét is ezen keresztül szolgáltathatjuk vissza.
public class DateTimeInfo: IHttpHandler
{
  public void ProcessRequest(HttpContext context)
  {
    context.Response.Write(context.Request["value"]);
    context.Response.Write("\r\n");
    context.Response.Write(DateTime.Now.ToString());
  }
}
Az elkészült modult épp úgy tudjuk meghívni, mint bármely ASPX lapot:
    private void Button1_Click(object sender, System.EventArgs e)
    {
      Response.Redirect("DateTime.ashx?value=SoftwareOnline");
    }
Mivel a modul nem ad vissza HTML kódot, így az eredmény csupán egy szöveges állomány lesz. Jelen példánál ez is volt a célunk, de ez persze nem jelenti azt, hogy ne lehetne bármilyen, tetszőleges HTML kódot generáltatni.

Szöveges kimenet cikksorozat

Csak szöveges adat szolgáltatása ASP.NET-es alkalmazás által - Szöveges kimenet 1. rész

Szöveges adat szolgáltatása ASP.NET-tel, másképp - Szöveges kimenet 2. rész